Sysobjects returning duplicate tables

I have a store procedure that is using a tmp table.   When I run 
SELECT * FROM sysobjects WHERE name = 'ztmp_TRL_Summary' AND TYPE = 'U'
I get 2 tables with 2 different creation dates.
I run this at the beginning  of the SP 
IF EXISTS (SELECT * FROM sysobjects WHERE name = 'ztmp_TRL_Summary' AND TYPE = 'U')
BEGIN
DROP TABLE ztmp_TRL_Summary
END
There are other SP's that create this table, but I don't think  they are currently being used. I think they are previous versions.  But is it possible to create the same table? 
Thanks!
Rudy

Rudy,
As Ashwin mentioned its really hard to find who is doing what unless you've a mechanism to do so.
Did you get the time of creation of the objects? You can try to see by querying the default trace. 
Change the database name and and time parameter in the below query to see if you find anything.
SELECT TE.name ,
v.subclass_name ,
DB_NAME(t.DatabaseId) AS DBName ,
T.NTDomainName ,
t.NTUserName ,
t.HostName ,
t.ApplicationName ,
t.LoginName ,
t.Duration ,
t.StartTime ,
t.ObjectName ,
CASE t.ObjectType
WHEN 8277 THEN '(User-defined) Table'
ELSE 'Hmmm???'
END AS ObjectType
FROM [fn_trace_gettable](CONVERT(VARCHAR(150), ( SELECT TOP 1
value
FROM [fn_trace_getinfo](NULL)
WHERE [property] = 2
)), DEFAULT) T
JOIN sys.trace_events TE ON T.EventClass = TE.trace_event_id
JOIN sys.trace_subclass_values v ON v.trace_event_id = TE.trace_event_id
AND v.subclass_value = t.EventSubClass
WHERE TE.name IN ( 'Object:Created' )
-- filter statistics created by SQL server
AND t.ObjectType NOT IN ( 21587 )
-- filter tempdb objects
AND DatabaseID <> 2 and DatabaseID=DB_ID('DSSP')
-- get only events in the past 24 hours
AND StartTime > DATEADD(HH, -24, GETDATE())
ORDER BY t.StartTime DESC ;
--Prashanth

Similar Messages

  • Returning a table from a stored procedure

    hi, i need to return a table from a stored procedure and show it, and come to this, but a don't know hoy to run it, so i don't know if it is right, can anyone help me?
    uTable out objects_uptime%rowtype
    as
    begin
    select * into uTable from objects_uptime;
    end;

    well, i finally discovered how to do the trick
    this is the code for the function:
    CREATE OR REPLACE FUNCTION FN_GET_RECORDS RETURN UPTIME PIPELINED IS
    CURSOR cUptime is select * from objects_uptime;
    p refcur.refcur_t;
    temp p%ROWTYPE;
    temp2 OUPTIME := OUPTIME(null, null, null, null, null, null, null, null, null);
    BEGIN
    OPEN cUptime;
    LOOP
    FETCH cUptime into temp;
    temp2.OBJ_NAME := temp.OBJ_NAME;
    temp2.IP := temp.IP;
    temp2.STATUS := temp.STATUS;
    temp2.DOE := temp.DOE;
    temp2.ENABLED := temp.ENABLED;
    temp2.COMMENT00000 := temp.COMMENT00000;
    temp2.USERID := temp.USERID;
    temp2.OBJECTID := temp.OBJECTID;
    temp2.MNTID := temp.MNTID;
    pipe row(temp2);
    EXIT WHEN cUptime%NOTFOUND;
    END LOOP;
    RETURN;
    END FN_GET_RECORDS;
    and this for the auxiliar package, object and table:
    CREATE OR REPLACE PACKAGE REFCUR
    as
    TYPE refcur_t IS REF CURSOR RETURN objects_uptime%ROWTYPE;
    end REFCUR;
    CREATE OR REPLACE TYPE OUPTIME AS OBJECT ( "OBJ_NAME"
    VARCHAR2(255), "IP" VARCHAR2(20), "STATUS" VARCHAR2(10),
    "DOE" DATE, "ENABLED" NUMBER(10, 1), "COMMENT00000"
    VARCHAR2(1000), "USERID" VARCHAR2(50), "OBJECTID" NUMBER(10,
    1), "MNTID" NUMBER(10, 1) )
    CREATE TYPE TUPTIME AS
    TABLE OF OUPTIME
    i call it this way:
    select * from table(FN_GET_RECORDS ())
    if anyone knows how to do the same in a shorter manner, tell me please.
    thanks to everybody for the help.

  • Question in invoking a bpel process from adf (how to return a table)

    hi all,
    i have developed a bpel process that checks customer name and if the customer name is valid , it will go to query a table of product and send this data to the client (jsf)
    In my bpel process ,there are two services
    1. Getcustomer service--> this service is developed by java web services that checks if the customername ='john' and it will return true and then query the product deta
    2. Product serverice--> this service is developed using entity ejb class first and then created sesssion bean , exposing this seesion bean as a ejb web serive that can query a product table in the database.
    In the syschronous process
    1. receive input (customer name)
    2. assigncustomer
    3. invoke_customer-->if =john----> Getcustomer service
    4. switch---->if true--->
    5. invoke_product ---> product service that can return a table of product detail
    6. assignproductdetail
    7. replyoutput to the client ( i could see the result of the detail of product on the bpel control , it seemed fine)
    i could deploy this bpel process sucessfully without errors and i copied the wsdl of this bpel process
    8. i created an adf application and put this wsdl link into the web service control that i created so that i could see the data control
    However,
    Under the data control tab......
    product------>(data control)
    process(string)...operation
    parameters
    ----input
    <----String (result)
    the question is did i create the wrong bpel process because the result that return is String why when the bpel process is mapped into data control it looked like this.
    why i can not see any collection of product or any parameter of product could anyone give me some advices???
    Therefore when i developed jsf page i fill the input value customer name -- and it returned nothing......please help i would highly appreicated.
    datacontrol.xml file
    <?xml version="1.0" encoding="UTF-8" ?>
    <pageDefinition xmlns="http://xmlns.oracle.com/adfm/uimodel"
    version="10.1.3.39.84" id="untitled1PageDef"
    Package="oracle.view.pageDefs">
    <parameters/>
    <executables>
    <variableIterator id="variables">
    <variable Type="java.lang.String" Name="process_input"
    IsQueriable="false"/>
    <variable Type="java.lang.String" Name="process_Return"
    IsQueriable="false" IsUpdateable="0"
    DefaultValue="${bindings.process.result}"/>
    </variableIterator>
    </executables>
    <bindings>
    <methodAction id="process" MethodName="process" RequiresUpdateModel="true"
    Action="999" IsViewObjectMethod="false"
    DataControl="product_customer" InstanceName="product_customer"
    ReturnName="product_customer.methodResults.product_customer_process_result">
    <NamedData NDName="input" NDType="java.lang.String"
    NDValue="${bindings.process_input}"/>
    </methodAction>
    <attributeValues id="input" IterBinding="variables">
    <AttrNames>
    <Item Value="process_input"/>
    </AttrNames>
    </attributeValues>
    <attributeValues id="process1" IterBinding="variables">
    <AttrNames>
    <Item Value="process_Return"/>
    </AttrNames>
    </attributeValues>
    </bindings>
    </pageDefinition>
    <?xml version="1.0" encoding="UTF-8" ?>
    <JavaBean xmlns="http://xmlns.oracle.com/adfm/beanmodel" version="10.1.3.39.84"
    id="product_customer" BeanClass="product_customer"
    isJavaBased="false">
    <MethodAccessor IsCollection="false" Type="java.lang.String" id="process"
    ReturnNodeName="Return">
    <ParameterInfo id="input" Type="java.lang.String" isStructured="false"/>
    </MethodAccessor>
    </JavaBean>

    hi, i just can not post the long information...test
    ProductSession.wsdl
    <?xml version = '1.0' encoding = 'UTF-8'?>
    <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://oracle/" name="ProductSessionWebServiceService" targetNamespace="http://oracle/">
    <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://oracle/" elementFormDefault="qualified">
    <complexType name="Product">
    <sequence>
    <element name="brand" type="string" nillable="true"/>
    <element name="price" type="float" nillable="true"/>
    <element name="description" type="string" nillable="true"/>
    <element name="category" type="string" nillable="true"/>
    <element name="name" type="string" nillable="true"/>
    <element name="prodid" type="long" nillable="true"/>
    </sequence>
    </complexType>
    <element name="mergeEntity" type="tns:mergeEntity"/>
    <complexType name="mergeEntity">
    <sequence>
    <element name="Object_1" type="anyType" nillable="true"/>
    </sequence>
    </complexType>
    <element name="mergeEntityResponse" type="tns:mergeEntityResponse"/>
    <complexType name="mergeEntityResponse">
    <sequence>
    <element name="return" type="anyType" nillable="true"/>
    </sequence>
    </complexType>
    <element name="persistEntity" type="tns:persistEntity"/>
    <complexType name="persistEntity">
    <sequence>
    <element name="Object_1" type="anyType" nillable="true"/>
    </sequence>
    </complexType>
    <element name="persistEntityResponse" type="tns:persistEntityResponse"/>
    <complexType name="persistEntityResponse">
    <sequence>
    <element name="return" type="anyType" nillable="true"/>
    </sequence>
    </complexType>
    <element name="queryProductFindAll" type="tns:queryProductFindAll"/>
    <complexType name="queryProductFindAll">
    <sequence/>
    </complexType>
    <element name="queryProductFindAllResponse" type="tns:queryProductFindAllResponse"/>
    <complexType name="queryProductFindAllResponse">
    <sequence>
    <element name="return" type="tns:ListOfProduct" nillable="true"/>
    </sequence>
    </complexType>
    <complexType name="ListOfProduct">
    <sequence>
    <element name="item" type="tns:Product" minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
    </complexType>
    <element name="removeProduct" type="tns:removeProduct"/>
    <complexType name="removeProduct">
    <sequence>
    <element name="Product_1" type="tns:Product" nillable="true"/>
    </sequence>
    </complexType>
    <element name="removeProductResponse" type="tns:removeProductResponse"/>
    <complexType name="removeProductResponse">
    <sequence/>
    </complexType>
    </schema>
    </types>
    <message name="ProductSessionWebService_mergeEntity">
    <part name="parameters" element="tns:mergeEntity"/>
    </message>
    <message name="ProductSessionWebService_mergeEntityResponse">
    <part name="parameters" element="tns:mergeEntityResponse"/>
    </message>
    <message name="ProductSessionWebService_persistEntity">
    <part name="parameters" element="tns:persistEntity"/>
    </message>
    <message name="ProductSessionWebService_persistEntityResponse">
    <part name="parameters" element="tns:persistEntityResponse"/>
    </message>
    <message name="ProductSessionWebService_queryProductFindAll">
    <part name="parameters" element="tns:queryProductFindAll"/>
    </message>
    <message name="ProductSessionWebService_queryProductFindAllResponse">
    <part name="parameters" element="tns:queryProductFindAllResponse"/>
    </message>
    <message name="ProductSessionWebService_removeProduct">
    <part name="parameters" element="tns:removeProduct"/>
    </message>
    <message name="ProductSessionWebService_removeProductResponse">
    <part name="parameters" element="tns:removeProductResponse"/>
    </message>
    <portType name="ProductSessionWebService">
    <operation name="mergeEntity">
    <input message="tns:ProductSessionWebService_mergeEntity"/>
    <output message="tns:ProductSessionWebService_mergeEntityResponse"/>
    </operation>
    <operation name="persistEntity">
    <input message="tns:ProductSessionWebService_persistEntity"/>
    <output message="tns:ProductSessionWebService_persistEntityResponse"/>
    </operation>
    <operation name="queryProductFindAll">
    <input message="tns:ProductSessionWebService_queryProductFindAll"/>
    <output message="tns:ProductSessionWebService_queryProductFindAllResponse"/>
    </operation>
    <operation name="removeProduct">
    <input message="tns:ProductSessionWebService_removeProduct"/>
    <output message="tns:ProductSessionWebService_removeProductResponse"/>
    </operation>
    </portType>
    <binding name="ProductSessionWebServiceSoapHttp" type="tns:ProductSessionWebService">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="mergeEntity">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    <operation name="persistEntity">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    <operation name="queryProductFindAll">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    <operation name="removeProduct">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    </binding>
    <service name="ProductSessionWebServiceService">
    <port name="ProductSession" binding="tns:ProductSessionWebServiceSoapHttp">
    <soap:address location="http://home-f045512354:8888/testproduct/ProductSession"/>
    </port>
    </service>
    </definitions>

  • Cannot use duplicate table name error in AMDP

    Hi Experts,
    I'm developing an application which has the following architecture
    SAP UI5->Gateway->ABAP Managed DB procedures(AMDP)->HANA SP(Stored Procedure)
    We are having a very peculiar problem where the gateway service works inconsistently for the same input data.
    i.e If I execute the same service n number of times, I get the results successfully for say n-3 times but the other 3 times I get a "RFC Error :Error while executing Database procedure"
    There is no change in the input data or DB table data during all the executions.
    Running the stored procedure stand alone in HANA studio works all the time.
    We tried executing the AMDP from SE24 and the same behavior occurred.
    When trouble shooting we found that the exception occurs inside the AMDP when the call db procedure statement is executed.
    Could you please advise what could be the possible reason for this any tuning parameter/unavailability of db connections?
    Or could you please suggest some other troubleshooting mechanism by which we can zero in on the cause?
    When I go in the debug mode I can see the exact error as
    cannot use duplicate table name:  [288] SAPXXX.ZCL_PLAN_MAINTENANCE=>GET_COMP_TYPE#stub#20140905055908: line 15 col 3 (at pos 492): cannot use duplicate table name exception:
    where ZCL_PLAN_MAINTENANCE=>GET_COMP_TYPE is the AMDP class and method. SAPXXXis the schema.

    I reported this to Adobe customer support on 11/29, and here is their response:
    Wednesday, December 5, 2007 12:51:27 PM PST
    Hello John,
    Thank you for contacting Adobe® Web Support for assistance with Adobe
    Photoshop Elements® 6.0.
    I understand that images are deleted if you accidentally try to move
    them to a folder that already includes a file of the same name.
    Thank you for bringing this to our attention. I was able to replicate
    this behavior as well. The best method to report errors of this nature
    is using the following form on our website:
    http://www.adobe.com/cfusion/mmform/index.cfm?name=wishform
    I will report this to the product team through my channels. You may want to submit this issue through the web form as it goes directly to the product development team.
    I hope this information helps to resolve your issue. If you require
    further assistance with this issue, please update your web case with
    complete details, including what steps you have applied and any error
    messages you are receiving.
    You may also call Technical Support at (800) 642-3623. We are available from 6:00 am to 5:00 pm Monday - Friday, Pacific Time.
    Kind regards,
    Alan C.
    Adobe Web Support

  • 11g Search Index is returning duplicate entries

    We are building up our 11g environments in preparation for migrating over from 10g. In one of our env's (UAT), we have an issue where, if we do a search on a Metadata field or Full Text value, the search engine is returning duplicate results - i.e. each document is listed twice.
    I have done several full rebuilds, including one where I deleted the IdcColl1 folder before kicking it off. No luck at fixing the issue.
    The environment is configured for Full Text searching using Sql Server 2005.
    I am not worried so much about finding out why this is like it is, I just want to fix it because I am running short of time. Any ideas?
    Thanks,
    Alec

    Srinath
    Thanks for your suggestion. I tried the process you described and did a full Reindex (which took several hours). However, when I did the search again this morning, I am still getting the duplicates.
    I am now thinking of exporting all the content using Archiver, reindexing the empty environment and then chcking that the index is empty. This way I have aclean sheet to start with. I would then reimport the content and do another reindex. Hopefully then, the index should be clean. My suspision is that after I have done the export and reindex, that there will still be stuff in the index. Have to wait and see.....
    Cheers

  • Error Duplicate Table

    Hi all, when I generate DLL...+
    !http://lh3.ggpht.com/_V2lpPpulbm0/SmBVR3EDjFI/AAAAAAAACbI/QatJ7QDayqE/s512/odi170709.PNG!
    I have this error.+
    !http://lh6.ggpht.com/_V2lpPpulbm0/SmBVR32GmhI/AAAAAAAACbM/L8MZ8t1Nu1w/odi2170709.PNG!
    Why say me this message, i think that i haven´t duplicate tables.
    thanks,
    Sorry for  Spanish Images Texts.

    Solved, I had two tables with the same "name resource".
    :p
    bye !

  • Persistence two beans in the same table, Duplicate table name in different beans

    Hi,
    I need to persist two beans belonging to different classes in the same
    table, but the following mistake happens:
    [jdo-enhance] javax.jdo.JDOFatalUserException: Invalid jdbc-table-name:
    Duplicate table name
    There exists some way of persisting both objects in the same table?
    thanks
    jasabino

    No. It would be very confusing to do so. Can they not share an
    inheritance hierarchy? You can use flat mapping to do so.
    Jose wrote:
    Hi,
    I need to persist two beans belonging to different classes in the same
    table, but the following mistake happens:
    [jdo-enhance] javax.jdo.JDOFatalUserException: Invalid jdbc-table-name:
    Duplicate table name
    There exists some way of persisting both objects in the same table?
    thanks
    jasabino

  • Calling a PL/SQL function returning Netsed Table Rows

    Hi,
    I am trying to call a Function which returns Nested Table rows (as Out Parameter) in Java .
    When I am trying to use
    pstmt.registerOutParameter(3, OracleTypes.OTHER);
    to capture the Out parameter in Java code , I get the follwoing error :
    java.sql.SQLException: Invalid column type
    I have even tried using OracleTypes.JAVA_OBJECT ,but I get the same error.
    If I use OracleTypes.JAVA_STRUCT I get
    java.sql.SQLException: Parameter Type Conflict: sqlType=2008
    error.
    Please help .
    Am I doing the right thing ?
    Thanks in advance.
    Ninad

    http://www.oracle.com/technology/sample_code/tech/java/sqlj_jdbc/files/jdbc20/jdbc20.html

  • How to return a table from function

    Hi,
    I want to return a table from the function. But i'm unable to do it.
    can any one give me a peice of code.
    Thanks in advance.
    Regards,
    Alok

    Are you referring to a pipelined table function?
    Here is an example of such a function returning a "hailstone" sequence.. a number range that always end in 4,2,1. (see the [url http://en.wikipedia.org/wiki/Collatz_conjecture]Collatz Conjecture for more details on the maths used).
    SQL> create or replace type TNumbers is table of number;
    2 /
    Type created.
    SQL>
    SQL> create or replace function hailstone( nValue number ) return TNumbers pipelined is
    2 n number;
    3 begin
    4 n := nValue;
    5 loop
    6 PIPE ROW( n );
    7 exit when n = 1;
    8
    9 if MOD(n,2) != 0 then
    10 n := (n * 3) + 1;
    11 else
    12 n := n / 2;
    13
    14 end if;
    15 end loop;
    16 end;
    17 /
    Function created.
    SQL> show errors
    No errors.
    SQL>
    SQL>
    SQL> select * from TABLE( hailstone(10) );
    COLUMN_VALUE
    10
    5
    16
    8
    4
    2
    1
    7 rows selected.
    SQL> select * from TABLE( hailstone(1923413) );
    ..etc.

  • Writing a web service that returns a table

    Hello Experts,
    I'm a bit new to J2EE programing and will appreciate your help.
    The main question is:
    What is the best way to return a table from a web service?
    In details:
    I wrote an EJB calling an RFC.
    The RFC returns a table.
    I've created a web service from this EJB and need to return the above table as an output parameter.
    What is the best way of passing the JCO.Table as an output parameter?
    Should I pass it as an Object (and the client will take care of the casting)
    or - is there a simple type I should convert the table to before passing it?
    Thanks for your help, Adi.

    Hi Adi,
    The way I always return a JCO table in my Webservice Interface is returning an Interface.
    Say you JCO table is a Person with different attributes in it.
    Then I create an Interface IPerson with methods like
    public abstract String getName(); etc.
    I also create an object Person with methods:
    public String getName() {
    return name;
    In my bean the I have a method:
    public IPerson getJCOPerson() {
    //retrieve the JCO table person
    IPerson pers = new Person();
    pers.setName(//name from JCO table);
    etc.
    return pers;
    I hope this helps you further.

  • BCG Brightness Contrast Gamma - Looking for BCG function returning color table / lookup table coded in pure G and applicable to Intensity Graph or Picture Control

    Looking for BCG function returning color table / lookup table coded in
    pure G and applicable to 8-bit Intensity Graph or Picture Control. Do
    not want to use IMAQ Vision is this particular application.  Any
    help is appreciated.
    Sincerely,
    Don

    Take a look at this color model software I put together.  (Don't concern yourself much with the basic programming at this point.). The color component generator subVI is borrowed from a LabVIEW example.
    First look at test_color2.vi.  If you adjust the sliders of the various controls, you will see how it works.  You can see that for pure B&W images, brightness, contrast, and gamma (which I think I have coded correctly) are all fairly straightforward to modify.
    Now look at test_color3.vi.  Here we try to adjust BCG for color images using the color model shown here where current color component clusters are carried into the BCG event cases via shift registers.  You can see that once color is introduced into the image, it becomes difficult to mix the colorizing with the BCG model.  And this is pretty much where I am right now.
    Would be interested in comments / suggestions.
    Sincerely,
    Don
    Attachments:
    test_color2.llb ‏2251 KB

  • Returning Internal Table as Returning Parameter of Method (by Value).

    When you return an internal table as the returning parameter of a method, it is passed by value.  I understand the concept of passing by value vs. passing by reference, but exactly what this means in this case is ambiguous.
    1)  It could mean that the entire table, including data, is copied from the local table in the method into the parameter provided by the calling code.
    2)  Alternatively, it could mean that only the pointer to the table is passed by value and the data is not literally copied from one place in memory to another.  This would <b>not</b> be the same as passing by reference.  For instance, I believe this is how object references are passed by value.
    I want to know how it works, so that I know if there is an efficiency problem with returning a huge table.  The returning parameter is wonderful for getter methods, and I prefer to use it over exporting parameters, but I have some concern about passing tables as returning parameters since I don't know how this works.
    Can anyone either explain this, or at least make it clear to me whether or not there is an efficiency issue?
    Thanks, in advance,
    -Chris

    Thanks to those who tried to help me with this question, but I finally had to just figure it out on my own.  I just realized today that there is a way to find the answer using the debugger's <i>Go To->Status Display->Memory Use</i> option.  This shows how variables are stored in memory.
    The answer:
    First of all, if you set one internal table equal to another like:
      i_tab1 = i_tab2.
    or like:
      i_tab1[] = i_tab2[].
    both will simply set <i>i_tab1</i> to point to the same memory that <i>i_tab2</i> is using.  It does <b>not</b> make a copy.  Now, if you attempt to change <i>i_tab1</i>, with an <i>append</i> statement for instance, a copy of <i>i_tab2</i>'s memory is made <b>then</b>!  The requested change to <i>i_tab1</i> is then applied to the copied data.  <b>AHA!!!</b>  This means that even if you think you are copying a table, you are not really doing it until it becomes necessary due to a divergence in values.
    I specifically tested a returning parameter to see how memory is handled, and it is basically just like an '<i>=</i>' statment.  No copy of the data is performed at first.  The memory that is allocated for the local variable in the method is simply pointed to by the variable used in the calling code to recieve that value.
    What if you then change the value in the calling code after the method has finished executing?  The answer depends on the situation.  If the value that you returned from the method is still being pointed to by another variable somewhere, then a copy is made when you attempt to change the returned table in the calling code, but if there is no longer another variable pointing to this memory, you can change the table in the calling program all you want without causing a copy in memory.
    For instance, if you have a getter method that returns the value of an attribute, at first no copy will be made, but when you try to change the table in your calling code, a copy will be made then.  However, if you just fill a local table in your getter method and return that table, there will never be a copy made, because the local variable that originally pointed to that memory expired when the method completed.  That means that after the method completes, the only variable pointing to the allocated memory is the one in the calling code that recieved the returning value.
    This is fantastic!!  This behaives in a way that seems to provide maximum efficiency in most cases.  Also, the table copies are <b>never</b> a waste, since they only happen upon changing of one of the table variables that point to the common memory, and in this case you would <b>want</b> to make a copy to avoid corrupting the other variable.
    Also, even if you did return your table as an exporting parameter by reference, you would not gain any significant efficiency.  There would still be no table copy if you don't change the returned table.  Also, if you did change the returned table, you <b>would</b> still produce a table copy if there was another variable, like an attribute, still pointing to the memory that you set your exporting paramter from before.
    The only situation that I can see resulting in a needless efficiency problem is if someone used a getter method to return the value of a table attribute, then changed the returned table in the calling program, and then used a setter method to set the whole table attribute equal to the changed table.  This would be a waste, so maybe this should be accomplished in another way.
    In conclusion, there is essentially no reason to hesitate returning a whole internal table as a returning parameter from a method call, even though it is pass by value.
    Kudos to the ABAP development team for their good design!

  • Duplicate table in physical Layer

    Hi,
    I've created a duplicate table in physical layer , When i check view data on duplicate, getting an error. (Table or view doesn't exist). How to get out of it.
    Regards,
    Sri

    When you duplicate a table, you create a new physical table with a new name. If this table is involved in a query, the SQL FROM clause will list this table. If the table does not exist in the database, then an error will occur.
    Creating an alias creates a copy of the table in metadata that will be referenced in SQL with a new alias name. The alias name in SQL will be derived from the ID given to the alias in the metadata.
    The important point is that you are not creating an object in the metadata that requires you to create a new object in the physical database. If you duplicate a table in metadata, then that new table must map to a separate table in the physical database. If it doesn't exist, you will need to create it or you will get a SQL error

  • Duplicate table  and  Alias table in the physical layer

    Hi,
    I want a clear information regarding the duplicate tables in the physical layer of the rpd.
    I mean what is the purpose of the duplicate tables in the physical layer.........
    thanks,
    chinna.

    what do you mean by duplicate of physical table? is it Alias table?
    if then,
    -> aliases are created to break the circular joins (which are not supported by obiee)
    -> and, as per apps standards no operation can be done on base tables which are imported directly to physical layer. Only aliases are joined and will be used in BMM layer
    -> useful to re-use the table more than one time , best example: W_DAY_D in apps rpd
    Edited by: Kishore Guggilla on Sep 23, 2010 10:41 PM

  • Alias Tables and Duplicate tables in Physical Layer

    Hi all,
    I have a small doubt in physical layer. We have two options when we right click table, 'Alias' and 'Duplicate'. To create another instance of a table, can we use any one of these. Does it make any difference
    Thanks & Regards,
    Jagi

    Hi,
    If u duplicate any table the join conditions will carry with respective tables , same name appending (TableName#1)
    In case of alias u need to specify joins conditions explicitly
    We can use same table with different constrains to the same table
    Aliases used, if you need to replicate a physical table and not create multiple tables with the same data
    If you delete any column in the Original table automatically deleted in alias
    table and Its not reflected in Duplicate table.
    Steps:
    Right Click the original table. Choose New Object and choose Alias.
    The mistake most people make is try to bring in the same table again and rename it or choose Duplicate by right clicking the original table.
    Thanks,
    Balaa...

Maybe you are looking for

  • Help with Radio Group and Web Service

    Hi,      I created a Radio Group with Dynamic Entry List (Web Service).  It seems my list keeps coming back empty.  I am on SP10.       When I deploy I get warnings that "Entry List is missing output fields mapping.  I think this is a warning only be

  • Where do I find retail install for Snow Leopard?

    Like, I keep seeing the upgrade packages on the store.apple.com but I don't see anything to just buy a fresh Snow Leopard OS to install on a hard drive that is totally blank. The Family Leopard pack for 49.99 just seems a little cheap to be a full in

  • Organization structure From CRM -- ERP

    Hi Can we replicate Org structure from CRM system to ERP system. If Possible Please tell me when such requirement comes. and also prvovide me the steps or config guide to carry out replication from CRM to ERP system  if such process is possible? than

  • Is Mail a little buggy this time around ?? (10.4.6)

    Powerbook G4 1.67Ghz - 2Gb ram- 10.4.6 (all up to date, no bugs, running fine, repaired disk permissions, etc....) Mail issue - (I never had this problem before going to .6) - I have 6 email accounts, NO signatures for anyone of them. I then create a

  • SQL-02103

    This happend during a prepare for a select statement using embedded C (proc). The select statement had a length of 20. Here's more info about the error from the database: out of memory (could not allocate) inconsistent cursor cache (out-or_range CUC