Values by copy vs. values by reference.....

Hi ,
Just a wonder ....!!!
Since passing values as reference are considered to be quicker method than passing values as copy between the host program to procedures , i wonder why the in out/out parameters are passed as copy and not as reference.....whereas the in parameters are passed as reference , at least in Oracle 8i .....
Thanks....
Sim

I think by default they passed as copiesNo , the in parameters are passed by reference... that's why if you try to pass a IN parameter as reference using the NOCOPY hint then an Oracle error is displayed....whereas the OUT / IN OUT parameters are passed by value ... and there is the capability to pass them as by reference using the NOCOPY hint....
Greetings....
Sim

Similar Messages

  • KE28 with" Copy Characteristic Value with Reference Data" doesn't work

    Hi experts:
    We need to make a top-down setting the processing option 'Copy Characteristic Value with Reference Data'. We have the following source data:
    Customer Business Unit  Value field.
    6        #              100
    On the other hand, we have plan data as reference data:
    Customer Business Unit  Value field.
           A              40
           C              40
           D              20
    We need to run a top-down to distribute from client to Business Unit but copying client of reference data. Then, we set 'Copy Characteristic Value with Reference Data' and, in the selection criteria we set '*' for customer.
    After running, the result is that the system can find 1 sender and 3 receivers. It is exactly what we are expecting. However, program doesn't make individual items and anything is distributed.
    We have found notes 1086282 and 1273924 but the result is the same after implementing these notes.
    Thanks in advance for your help.
    Best regards
    Jose

    There are some restrictions on the XML Schema format that you can report off of in Crystal Reports.
    If you're using the ODBC XML driver, you may find this of relevance:
    [http://resources.businessobjects.com/support/communitycs/TechnicalPapers/cr_xml_data_sources.pdf|http://resources.businessobjects.com/support/communitycs/TechnicalPapers/cr_xml_data_sources.pdf]
    and if you're using the native XML driver, the following gives a guide for the accepted formats:
    [http://resources.businessobjects.com/support/communitycs/TechnicalPapers/cr_xi_native_xml_driver.pdf|http://resources.businessobjects.com/support/communitycs/TechnicalPapers/cr_xi_native_xml_driver.pdf]
    Sincerely,
    Ted Ueda

  • Wanna send integer value by reference in function

    I wanna send integer value by reference thro' function. Here's the code going.
    class test
    basic b = new basic();
    test()
    test2.Fuction(b.value);
    class basic
    int value;
    basic(){}
    //////here i want value to be affected by Function.I don't want it affected by value, but by reference.
    class test2
    public static void Function(int value)
    value++;

    If you want to update the value in your b object, then you have to pass the reference of that object to test2.Function(..). Here is one way to do it:
    class test {
      basic b = new basic();
      test() {
        test2.Function(b);
    class test2 {
      public static void Function(basic b) {
        b.value++;
    }It's a good idea to follow the java naming convention. Classes should begin with an upper case letter. Methods and variable names with a lover case letter (but final static variables with all upper case letters).

  • DLL interfacing with mixed value and reference types

    I'm currently trying to work with a supplied DLL.
    I have header files and all, and the DLL import wizard does a decent job of importing the DLL functions but there are some data types which simply can't be handled.
    The DLL requires usage of a data type which is a struct with value and reference data types.  I could theoretically replace the references with simple U32s but much of the required information in the data is in the data structures referenced by the pointers.
    How do I go about implementing this seeing how I need to be able to pass the data back into the DLL in its original form (value and reference types).
    I have something like the following:
    struct Item {
    Int Device,
    *Item Next
    *Item Previous
    *Data Datastruct
    I have downloaded the WDK from Microsoft, have CVI and Visual Studio 2008 available.  I'm not very experienced at this end of things...   I can deal with Structs with pure value types but how do I get at the data in the reference types?
    I strongly suspect I need a wrapper DLL, but how is the best way to go about this?
    Shane.
    Say hello to my little friend.
    RFC 2323 FHE-Compliant
    Solved!
    Go to Solution.

    Hi Shane,
    To be honest, I don't understand why you have to pass the ENTIRE structue (if it's "Item" structure. The pointer to the next and the previous item should be held and manituplated in the DLL, doesn't it?
    Operate within classes....
    Are you talking about Labview Classes? I didn't use it yet. Sorry.
    Convert Linked List to Array You can't store all elements by value in a cluster, because it's kind of recursive. The next pointer leads to the same Item structure (with it's own next pointer. If it's a circulary-linked-list it will never stop)
    Or did you mean to store the pointers as a U32 value? That should work.
    Output the struct as a binary blob Yes, why not ! But that lets me assume you don't know the concrete "Datastructure" ?!
    I'm honest again I can't see the important information you mentioned if you pass the Data structure as a binary blob.
    Read-only is a very good idea. If you don't need to tweak the pointers in the list you should avoid it.
    Balze

  • Problem extracting value from reference

    Hi all,
    I have a main VI where the user specifies a range for acquiring data. These values are then passed to a subVI which iterates a loop an according number of times. I have created a reference in the subVI which passes the position of the data acquisition in the range specified as I want to provide a progress bar which would be calculated as (max value - current value)/(maxvalue - minvalue).
    I created an indicator to show the current value on the main VI which is related to the reference I created and when I run the main VI I can see this value changing correctly. The problem is that I cannot find a way to wire this value into the formula above. I tried changing the indicator to a control, but the value is not passed.
    I have attached my code along with the subVIs to illustrate the problem. Current Frequency A increments correctly on the screen whereas Current Frequency B stays constant. I have also tried using local variables, property nodes and an OpenVIReference Node but none of these solve the problem.
    I'm sure this must be possible so if somebody could tell me the correct way to go about it then that would be much appreciated :-)
    Many thanks,
    Ian
    Attachments:
    FRA SubVI.vi ‏71 KB
    extract value from reference.vi ‏52 KB
    DATA FROM RIG v2.vi ‏553 KB

    No worries - I managed to solve my own problem.
    I realised if I did the calculation and created the progress bar on the subVI and made the reference straight to that then it wouldn't required the need to bring a wire from the reference.
    Still, I'd be intrigued to know if I could've done it the other way tho...
    Ian

  • How to implement a Copy or Create with Reference scenario

    For business objects, you might want to implement a Copy or Create with Reference scenario. The following procedure describes the UI configuration that you need if you want to place a copy button (in our example on an OWL) that starts a quick activity floorplan (on the same BO = Copy, or a different BO = Create with Reference). Pre-requisie in the target BO: The target BO requires a BO element SourceBOID and a Copy action that reads the SourceBO by SourceBOID by query, and copies the elements from the source to the target BO.
    The UI configuration in the target floor plan is:
    1. Open the QAF floor plan of the target BO (target floor plan).
    2. In the DataModel view of the target floor plan, select the Root entry and select Add Data Field from the context menu. Rename the created data element to OBN_OriginBOID.
    3. Choose the Controller tap, and select INPORTS and choose ADD INPORT from the context menu. A new in-port is created. Rename the in-port, for example to Copy.
    4. In the in-port maintenance form, activate the check box OBN INPORT.
    5. Select the namespace of your solution and the target business object.
    6. In the input field SELECT OPERATION enter Copy. A new select operation is created. The combination of business object name (including namespace), business object node and operation identifies the in-port and therefore the related floor plan as navigation target.
    7. Select the port type package /SAP_BYD_UI/SystemPortTypes.PTP.uicomponent.
    8. In the PARAMETERS section of the form, click the ADD button. Maintain the binding of the created parameter to /Root/OBN_OriginBOID. Based on this configuration, the system will transfer the parameter of the in-port to the element in the data model when the OBN is executed.
    9. In the Properties view, select the drop-down list box of the property EVENTS u2022 ONFIRE. Scroll down and select the entry u2026 NEW EVENT HANDLER u2026. The system starts the maintenance window for event handlers. Rename the event handler to CopyIn.
    10. In the OPERATIONS table of the maintenance window for event handlers, select type: BUSINESS OBJECT OPERATION. In the form below the table select the value CREATE for the input field BUSINESS OBJECT OPERATION TYPE. This operation will create a BO instance in the backend when the OBN is executed.
    11. In the OPERATIONS table, create a new operation of type: DATAOPERATION.  In the configuration of the data operation, select the operation type ASSIGN, source expression /Root/OBN_OriginBOID and target expression /Root/<BO>/OriginBOID.
    12. Create a third operation of type: BUSINESS OBJECT ACTION. Select the Copy action of the target business object and click the BIND button. Note: This action enforces another roundtrip to the backend. The Copy action must be implemented so that it will read the origin BO and copy selected data from the origin to the newly created object.
    13. Test the changes in the preview. If no error message is issued, save and activate the floor plan.
    The following procedure describes the configuration in the source floor plan (e.g. OWL floorplan ):
    1. Open the Source BO OWL floor plan (source floor plan).
    2. In the Designer view, place cursor the on the toolbar area and select ADD u2022 APPLICATION-SPECIFIC BUTTON u2022 MY BUTTON from a context menu. Rename the new button to Copy.
    3. In the Properties view, select the drop-down list box of the property MENU INFORMATION u2022 NAVIGATION. The system launches the maintenance window for OBN configuration.
    4. Select the in-port of the target floor plan by selecting the target business object (with namespace and name) the target business object node and the target operation, and the operation Copy.
    5. Choose the navigation style NEWWINDOW.
    6. Close the OBN configuration maintenance window by clicking the OK button. The system creates the OBN configuration, an out-port, that is used by the OBN configuration, and an event handler that uses the out-port and that is assigned to the button (see Properties view, EVENTS u2022 ONFIRE).
    7. Go to the Controller view and rename the OBN configuration to Copy, the new out port to Copy and the new event handler to CopyOut.
    8. Check that the event handler CopyOut fires the out-port Copy.
    9. In the Parameters section of the out-port maintenance form, click the ADD button. Maintain the binding of the created parameter as /Root/<BO>/<BO>ID. Based on this configuration, the system will transfer the identifier of the selected source BO to the out-port data structure when the OBN is executed.
    10. In the Operations table, select type: FIREOUTPORT. In the form below the table select the out-port CopyOut.
    11. Test the changes in the preview. If no error message is issued, save and activate the floor plan.

    Hi Dries-
    There are no pre-packaged solutions with BADIs since they are, by definition, custom development.  If that's the path you need to go down then consider the following high level alternatives:
    Incorporate custom code into the BPC Write Back BADI.  You can restrict the execution of the BADI using filters on the BADI definition, so that the BADI execution only occurs when a data manager package is called, and only for some defined combination of applications/appsets.  Utilized the standard copy/move functions delivered in Data Manager. When the BADI is called, interrogate each record being processed (table CT_ARRAY) and determine if the record has a value you want to process (i.e. save to the target application).  Skip any record that has a zero value.
    Another alternative is to develop the BADI as custom logic.  Data Manager parameters can be picked up in Script Logic and the values can be sent to the BADI by adding parameters.  Please see an example of parmater use in the "How To" document for Destination App at:
    [EPM How To Guides|https://wiki.sdn.sap.com/wiki/display/BPX/Enterprise%20Performance%20Management%20%28EPM%29%20How-to%20Guides]  > "How-to Desitnation App"
    Regards,
    Sheldon

  • Copy Sales Order with reference to a Contract

    Hello,
    how can I create a copy of a sales order referred to a contract mantaining the reference?
    I have an order referred to a contract; I would like to create a new order in copy ( va01 - create with Reference) maintaining the relationship to the contract.
    Thank to all,
    Antonio

    Hi,
    You can create a new order by referring to a contract by clicking on "Create with reference".
    Click on Contract and enter the contract number here.You can change teh requested delivery date manually.
    Click on Copy.
    Before this,make sure that the copy controls have been mainatined for these two document types.
    Regards,
    Krishna.
    Note:Please search in the forum before posting basic questions.

  • Endashes and quotes are not converted correctly when copying FM files by reference

    I'm using FM7 in the TCS1 in a Windows XP environment. I am copying FM books by reference into my RH project.
    I'm noticing that endashes (–) and quotation marks (") are not consistently coming across correctly in my RH project.  Instead, I am getting &endash; for the endash, and &rdquor: instead of a quote.  Note: it appears to be only the first quote that encloses text that doesn't convert; the closing quote converts.
    Any ideas?

    I have RoboHelp 7 and the patches won't install unless I do a complete reinstall.  Since I'm at the end of a release, that will have to wait.
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Mary K. Greer
    Information Developer - Learning Management Solutions
    Intelligent Automation Solutions Client Services
    407.771.8187

  • Assigned by value or reference?

    Hi,
    I have a master list of (pl/sql) records in a collection (a PL/SQL table indexed by varchar2), and depending on certain conditions and calculations, I take a subset of them and put them into another collection (i.e. another such PL/SQL table). I do this by a simple assignment, i.e. something like this
    other_table(indexstring) := my_first_table(indexstring);
    My question is the following: is there one record, but with references in both tables, like objects in Java, or is the record duplicated and put in the other one?
    Is there any way I can manipulate the behavior to be one or the other, i.e. store by value or store by reference?
    Thanks,
    Regards,
    Srini

    That would create a separate copy.
    However, if you passed the collection into a function or procedure as an IN parameter, it would be passed by reference. (For OUT and IN OUT parameters things are slightly more complicated, but essentially you can achieve this with the NOCOPY compiler hint.)

  • Varbinary(max) parameters in Nested Stored Procedures by value or reference _Expand / Collapse

    Consider a situation where a stored procedure taking a varbinary(max) (BLOB) input parameter
    then calls a nested stored procedure and passes along that varbinary(max) as an input parameter to the nested stored procedure.
    Is a copy of the BLOB provided to the nested stored procedure (passed by value) OR is the BLOB passed by reference.
    My interest is in understanding the potential memory hit when handling large BLOBs in this environment.
    For example, if the BLOB is 200MB, will SQL server need to allocate memory for a new copy each time it's passed to another stored procedure at the next nestlevel?
    Looks like table type parameters are passed by reference, but I haven't been able to find any info on BLOBS in this context.

    The semantics for parameters in SQL Server is copy-in/copy-out. However, this does not mean that there cannot be optimizations. That is, there is no need to copy the BLOB, as long as the procedure does not change it. Whether they actually have such an optimization,
    I don't know.
    I composed the repro below, and it is sort of interesting. If I restart my instance (SQL 2014), the memory usage grows with about 40 M for each nesting call, which certainly indicates that the BLOB is copied over and over again. But if I then run it again,
    the growth is not the same. This may be because, it uses buffers already available. (A BLOB has to be a handle like a table when it is over some size.) Then again, it means that it is squeezing something else out of the cache.
    CREATE PROCEDURE K  @h varchar(MAX) AS
       SELECT SUM(pages_kb)*8192 AS K, datalength(@h) as Dlen FROM sys.dm_os_memory_clerks
       SELECT @h = ''
    go
    CREATE PROCEDURE L  @h varchar(MAX) AS
       SELECT SUM(pages_kb)*8192 AS L1, datalength(@h) as Dlen FROM sys.dm_os_memory_clerks
       EXEC K @h
       SELECT SUM(pages_kb)*8192 AS L2, datalength(@h) as Dlen FROM sys.dm_os_memory_clerks
       --SELECT @h = ''
    go
    CREATE PROCEDURE M  @h varchar(MAX) AS
       SELECT SUM(pages_kb)*8192 AS M1, datalength(@h) as Dlen FROM sys.dm_os_memory_clerks
       EXEC L @h
       SELECT SUM(pages_kb)*8192 AS M2, datalength(@h) as Dlen FROM sys.dm_os_memory_clerks
       --SELECT @h = ''
    go
    CREATE PROCEDURE N  @h varchar(MAX) AS
       SELECT SUM(pages_kb)*8192 AS N1, datalength(@h) as Dlen FROM sys.dm_os_memory_clerks
       EXEC M @h
       SELECT SUM(pages_kb)*8192 AS N2, datalength(@h) as Dlen FROM sys.dm_os_memory_clerks
       --SELECT @h = ''
    go
    DECLARE @h varchar(MAX) = replicate(cast('ABCD' AS varchar(MAX)), 1E7)
    EXEC N @h
    go
    DROP PROCEDURE K, L, M, N
    Erland Sommarskog, SQL Server MVP, [email protected]

  • Can I use a cell value to reference a table on another sheet?

    I'm not sure if this is possible and I have had no luck with searches, here is what I am attempting to do...
    On my first sheet I have a number of tables, each holding information on a service. Each table is named to match the service name.
    On another sheet I have a list of clients that use these services, with the service name (to match the table name on the first sheet) in a cell in the client's row.
    I would like to pull data from one of the cells on the Service table to include it in a concatenate formula in the clients row.
    I was hoping to be able to use the value of the cell with the service name in it as part of the formula to reference the service sheet...
    For example:
    ="something"&Services::B2::C6&"something"
    Is this possible, or is there a way I can work around the auto corrections that numbers keeps applying?
    Cheers

    you can construct the text of a cell reference as a string by concatenating information then use the function indirect() to turn the string into a reference.
    so you would do something like:
    =indirect("something"&Services::B2::C6&"something")
    this is assuming that "something"&Services::B2::C6&"something"  results in a string that would be a valid reference.

  • Report for PGI & billing value with reference to SO Line item

    Dear all,
    Please guide me whether there is any standard report available to check the PGI value and billing at a time with reference to a sales order (line item).
    Thanks & regards.
    Pranab

    as far as I know there is NO such standard report.
    you would try to build sap query based on VBAK/VBAP using VBFA checking LIKP/LIPS and VBRK/VBRP...
    but you may request abaper for more professional report with MKPF/MSEG and BKPF/BSEG

  • How to change a value with reference if inside of a tabControl?

    Hello,
    i have a Vi with a tabcontrol and two pages. On each page is a string-control (string1 and string2).
    Now i have second vi that gets the file-reference of the first vi and is called inside of the first vi.
    This reference do i want to use to change the value of the string-control.
    But i dont have access to "pages" when using the reference.
    Attached the two vis.
    Thanks for the help
    Attachments:
    main.vi ‏7 KB
    ref.vi ‏11 KB

    Easiest way that I know is to right click on the control itself and select "Create->Reference".
    Mark Yedinak
    "Does anyone know where the love of God goes when the waves turn the minutes to hours?"
    Wreck of the Edmund Fitzgerald - Gordon Lightfoot

  • HashSet get() and contains() methods, by value or reference?

    All the tutorials I've seen on HashSets use Strings as the object type. With Strings, it seems the get() and contains() methods work by value, not by reference.
    <CODE>
    String s1 = "dog";
    String s2 = "cat";
    String s3 = "dog";
    HashSet<String> set = new HashSet<String>();
    set.add(s1);
    System.out.println(set.contains(s1)); //true;
    System.out.println(set.contains(s2)); //false
    System.out.println(set.contains(s3)); //true
    </CODE>
    But when I use a custom object, it works by reference:
    <CODE>
    MyClass c1 = new MyClass("dog", 1);
    MyClass c2 = new MyClass("cat", 1);
    MyClass c3 = new MyClass("dog", 2);
    MyClass c4 = new MyClass("dog", 1);
    HashSet<MyClass> myClassSet = new HashSet<MyClass>();
    myClassSet.add(c1);
    System.out.println(myClassSet.contains(c1)); //true
    System.out.println(myClassSet.contains(c2)); //false
    System.out.println(myClassSet.contains(c3)); //false
    System.out.println(myClassSet.contains(c4)); //false
    </CODE>
    ("MyClass" is a simple class that holds a String and an int).
    Is there any way I can get the set to select by value rather than reference for objects that aren't String?
    If so, is it possible that the value test could be customised, so that, for example, the above will return true if the String in MyClass is the same, regardless of the int value?

    803559 wrote:
    With Strings, it seems the get() and contains() methods work by value, not by reference.
    String s1 = "dog";
    String s2 = "cat";
    String s3 = "dog";
    System.out.println(set.contains(s1)); //true;
    System.out.println(set.contains(s2)); //false
    System.out.println(set.contains(s3)); //true
    Is there any way I can get the set to select by value rather than reference for objects that aren't String?Warning: Never use the term "by reference" around Java geeks. It makes 'em go all green at the gills and they start muttering about 'bloody C++ crossovers'.
    However, as DrClap pointed out, you've mis-diagnosed the problem:
    System.out.println(s1 == s1);
    System.out.println(s1 == s2);
    System.out.println(s1 == s3));would print out the exact same results.
    For an explanation why, Google "Java String pool" or try [url http://stackoverflow.com/questions/3297867/difference-between-string-object-and-string-literal]here.
    If so, is it possible that the value test could be customised, so that, for example, the above will return true if the String in MyClass is the same, regardless of the int value?Absolutely. But, as others have said, you'd need to override equals() and hashCode().
    Winston

  • Passing values by reference to a graph seems to be not working... help, I'm losing my mind! ;)

    I'm bordering on psychosis now.
    Grr..
    I'm trying to pass an array to a waveform graph by reference. The array is an array of I16 data.
    I have verified that the data in question is correct, and when viewed view probe (RIGHT before going into the property node, mind you) it is something like:
    2048
    2053
    2066
    However, when you look at the front panel it's totally different. Turning on Autoscale Y and looking at the data showed that instead it was displaying:
    -1024 2048 0 0 (two other numbers) (two other numbers) 0 0 (etc.)
    I imagine that it is some sort of typecasting problem, but I cannot figure it out.
    I note that the word "value" on
    the property node is Orange, indicating that it is writing a DBL. I had the Refnum Control include data type, but even so, it appears Orange.
    The Waveform Graph itself was of type DBL. I never changed it, but in the main program, I did wire an I16 value to it, which SEEMED to change the Graph to type I16. Is there a more rigorous way of changing a Waveform Graph's data type. (This could be the problem)
    I'll attach the front panel with the sub-vi in question. Please help or I may explode.
    -Dobbs

    Here are the files:
    Attachments:
    dwcs_advanced.vi ‏350 KB
    dwcs_-_sw_graph_load_&_save.vi ‏62 KB
    flattp10.wfm ‏16 KB

Maybe you are looking for

  • How do I go back to Snow lepoard from Yosemite? I hate it!

    I hate it why did I do this update?? My computer is slower then ever and reboots often

  • EAS Export Question

    I'm looking at a recent export file from an Essbase cube (Level 0 Export EAS) and it appears that for records that have trailing null values, they are not being written to the file as #MI, but rather are null. Is this typical? This is a Planning cube

  • Anyone know when Mac will have the fix for the slow internet due the 10.8.2. upgrade?

    I just uped to 10.8.2 on a Mac pro, and know the internet throughput has dropped from a Ping of 87, download 24.24 Mbps , upload 3.82 Mbps to a ping of 248, download .37 and up of .17.  I have plugged two other Macs (one at a time) into the same netw

  • AXL: How to find fields needed for AXL command?

    Hey guys, i want to configure my CUCM via AXL and did a tutorial for add Translation Patterns. There are all the fields like blockEnable, networkLocation, routeFilterName, newPattern and so on. But how can i find ou which field i need for other opera

  • Need help with session sharing in WebCenter Portal

    Hi, How can I share session between a WebCenter Portal application and the portlets it is consuming? Basically I want this for authentication. In the portal framework application, I'm setting a user object in the session, How can I get the object in