Accessing global variables in a BAdI

How can we access the global variables of a program from a BAdI ?The BAdI does not have that particular variable as a part of it's importing/exporting parameter.The BAdI gets triggered at a particular point in the program.The name of the BAdI is /SAPAPO/SDP_SELECTOR and the transaction is /SAPAPO/SDP94(Demand Planning: APO).
Thanks,
Savitha

Hi,
    Try to export the variable to memory id or use database memory id.
Like this.
Export l_vbeln to memory id 'ZTEST'.
you can give any name instead of ZTEST.
or u can export to database memory id
EXPORT tab = lt_vbkd
  TO DATABASE indx(V1)
  FROM ls_indx ID 'ZTEST'.
Regards,
Niyaz

Similar Messages

  • How can I access global variables in a loaded Applescript?

    How can I access global variables in a loaded script, in Xcode, ApplescriptObjC? Basically, I have a global variable defined in my parent script using "property", and I need to modify objects connected to those variables inside of a loaded script.
    Example:
    Parent script:
    script AppDelegate
    property myTextField : missing value
    //linked to a text field object
    tell myScript to myAwesomeHandler_()
    end script
    Loaded script:
    on myAwesomeHandler_()
    myTextField's setStringValue_("The new Xcode is so glitchy ugh")
    //changes value of linked text field of parent script
    end myAwesomeHandler_
    The problem is, the variable is undefined in the Loaded script, and I need it to have the same value as the parent script, and I don't want to pass the variable through the Handler. Any ideas?

    I think want you are looking to do will need to be done in two steps. Because myTextField needs to be a property for the ObjectiveC part of the code you cannot turn it into a global.
    However if you make a temporary variable global assign the string to it in the handler then set myTextField off of it.
    global myTextFieldGlobal
    script AppDelegate 
    property myTextField : missing value 
    //linked to a text field object 
    tell myScript to myAwesomeHandler_() 
    myTextField's setStringValue_(myTextFieldGlobal)
    end script 
    on myAwesomeHandler_() 
    set myTextFieldGlobal to "The new Xcode is so glitchy ugh"
    //changes value of linked text field of parent script 
    end myAwesomeHandler_ 
    I know you stated you did not want the handler to return a value but I have to ask why? Global's, imo, are not a good idea and really should be used as a last resort.
    One other possibility is to pass a reference to the property to the handler. Not sure if that works in AS of if that would satisfy our requirement of not passing the variable through the handler
    <edit>
    Another though have you tried to define the property outside the script?  That is
    property myTextField : missing value
    script AppDelegate
    Not sure if that will work.
    You might also want to have a look at Scope of Properties and Variables Declared in a Script Object

  • Access global variable in fpga from rt-target

    Hi All,
    I have a realtime PC with NI-FPGA 7852R.
    Generally I used programmatic front panel communication to access variables from FPGA to rt-system since I need the data for control and not for data logging.
    The thing is, I bumped into a tutorial and suggested me to use global variables to save resources of your FPGA. My question is, is it possible to access global variable that belongs to FPGA from rt-system? As far as I tried, this does not seem possible.
    Thanks,
    Auralius

    Could you point us towards this tutorial?
    Chris
    Certified LabVIEW Architect
    Certified TestStand Architect

  • Call function in LabView from a DLL, then access global variable from DLL

    I have created a DLL in LabWindows with a function and a structure.  I want to call the function from within LabView and then access the global structure.  I am able to call the function from the DLL with a "Call Library Function Node" and can access the return value, but I cannot figure out how to access the global structure.  The structure is declared in the DLL header file with __declspec(dllimport) struct parameters.
    Is there any way of accessing this structure without using the Network Variable Library?
    Solved!
    Go to Solution.

    dblok wrote:
    When you say "access to" or "the address of" the global variable, do you mean to pass the variable as an argument to the function call in the DLL?  If so, then I was not really sure how to pass a cluster from LabView by using the "Call Library Function Node".
    Yes, that's exactly right.  I would include a pair of helper functions in the DLL to read and write the global variable.  Alternatively you might write separate helper functions for each field inside the global structure, depending on the number of fields and whether you want to do any validation on the values.
    You can pass a cluster by reference to a function that expects a struct by setting the parameter to Adapt to Type, so long as the cluster does not contain any variable-length elements (strings or arrays).  The cluster needs to match the struct exactly, and sometimes that involves adding extra padding bytes to make the alignment work.  Variable-length elements in LabVIEW need to be converted to clusters containing the same number of elements as the struct definition (for example, if your struct contains char name[12], you would create a cluster of 8 U8 values, and you could use String to Array of Bytes followed by Array to Cluster to convert a LabVIEW string into that format).  If the struct contains pointers it gets more complicated, and it may be easier to write functions in the DLL to access those specific elements individually.
    If you can't get this working or need help, post your code and an explanation of the error or problem you're seeing.
    EDIT: it is also possible to include a single function in the DLL that returns the address of the global variable, which LabVIEW can then use to access and modify the data, but that's more complicated and likely to lead to crashes if you don't get the memory addressing exactly right.

  • How to create and access Global variable in Microsoft Lightswitch(VB)?

    How to create an integer datatype Global variable in Microsoft Lightswitch 2011(VB) and access it in pre-process query to set value? Can it be accessed and set like Me.Application.<MyGlobalVariable> = 999
    Thnx.
    jajjaar123

    If you want to create integer datatype Global variable in lightswitch, you can refer to (Eric Erhardt) blog
    Create and Use Global Values In a Query

  • Accessing Global variable which is in another script file

    Hi,
    I have 2 scripts as File1.scpt and File2.scpt in desktop. I am in need of having the common global variable 'GG'.
    File1.scpt has only the following code
    *global GG*
    *Set GG to "I am global"*
    File2.scpt has
    +set file1 to (load script file "Macintosh HD:Users:mowri:Desktop:File1.scpt")+
    +display dialog m+ -- not working -- Error message: "The variable m is not defined"
    +display dialog m+ of file1 - not working -- Error message: "Can't make m into type string"
    It will be great help if you can clarify about my mistakes in this?
    Regards
    Mowri

    Another solution, shorter than the previous one:
    File1.scpt
    set GG to "I am global"
    File2.scpt
    set file1 to (load script file "Macintosh HD:Users:mowri:Desktop:File1.scpt")
    run file1
    display dialog GG
    Ref.: [Handlers in Script Applications - run Handlers|http://developer.apple.com/mac/library/documentation/AppleScript/Conce ptual/AppleScriptLangGuide/conceptual/ASLRabout_handlers.html#//appleref/doc/uid/TP40000983-CH206-SW14]
    Message was edited by: Pierre L.

  • Accessing Var from main Nib/Class - [global variables]

    I'm sure this is a simple solution and the problem is I'm just not thinking right. I just started programming in Objective C but have come a long way in the past 2 weeks. Pretty extensive knowledge in C# and some java.
    Anyways, I've been creating an app and have streams working, CFNetwork working, network services discovery working and a tab bar with a custom View controller linking to one of the tab-bar buttons.
    So when you click on one of the tab bar items it opens a new nib file. That nib loads a table view. When nib loads it hits a method which starts looking for network services and updates the table when it finds some.
    Now the idea is is to have a selector on the cell and when you choose the service it adds same variable info, ip and port, back to a global variable which can be used through the entire app and all extra loaded nib files.
    Out of all this, I don't know how to access global variables....prob should be the simplest thing to do out of all I've done. I have ideas of how it should be done but don't know how to access it.
    Idea would be:
    MainWindowNib has NSString var that is public with a getter setter. But how can I access that MainWindowNib var from a SecondView.nib file/class. There a way to get the parent of the secondView.Nib? I have no clue.
    Any help would be great!
    Thanks!

    I'm still a bit confused how you access that method.
    Main.nib class : UIApplication
    NSString *port
    SetupView.nib : NSViewController
    view
    -TableView added to view
    -Seperate NSObject for TableViewDelegates
    -When item selcted, pass NSString to [main port]
    How do I get a pointer to port. I don't really understand how to do this with objective C.
    In C# I would be something like: [Not exact syntax but u get the idea]
    public Main : Form
    public string port{get;set;}
    Main()
    sView SeconddForm = new SecondForm(this);
    public SecondForm : Form
    SecondView(Main main)
    main.Port = "8080";
    Message was edited by: Clarke76
    Message was edited by: Clarke76

  • How to declare a global variable from a PL/SQL package

    Hi All,
    Using a global variable is a bad practise for all language. However, in my case, I have a PL/SQL package defines all constants, and I want to use them directly via SQL statement, for instance,
    PACKAGE my_const
    IS
         DEFAULT_ZIP_CODE CONSTANT VARCHAR2(5) := '00000';
    END;And I cannot referrence this variable from my select statement as
    SELECT my_const.DEFAULT_ZIP_CODE from dual;I have to create a function via my package, as,
    FUNCTION get_default_zip_code RETURN VARCHAR2
    IS
    BEGIN
         RETURN DEFAULT_ZIP_CODE;
    END;and
    SELECT my_const.get_default_zip_code from dual;I don't want to create functions to referrence the default varaibles. Does anyone have any clues?
    thanks
    Edited by: user4184769 on Jul 19, 2010 8:36 AM

    riedelme wrote:
    thanks for the info. Your scope explanation makes sense even though it is not intuitive to me. I think the usage of package variables should be supported by SQL (they're just values to be copied) Maybe look at it from another language's perspective. You want to use a global PL package variable in Java/C#/Delphi/VB/etc. How would you do it?
    None of these languages can crack open the data segment of a PL code unit, inspect the variables in it, and extract a value from it. Instead, it needs to be done as follows:
    Using sqlplus as the client illustrates how all these languages will need to do it:
    SQL> var value varchar2(20);
    SQL> begin
      2>     :value := SomePackage.someVar;
      3> end;
      4> /So why should SQL behave differently? It is not the same as the PL language. It is not a subset of the PL language. Yeah, PL/SQL blurs the line between these 2 languages making it very simple for us to mix their source code. But PL/SQL is SQL integrated with PL - not PL integrated with SQL. PL has tight hooks into SQL, creating cursors for you, defining bind variables, binding variables and doing the whole Oracle Call Interface bit for you.
    But SQL has no need for PL code, just as it has no need for Java code, or Delphi code or VB code. Yes, it is possible for it to call Java stored procs. As it is possible for it to call PL procs. But these are via the formal call interface of those languages - not via tight integration hooks that blur the languages and make SQL and Java, or SQL and PL, look like a single integrated source code unit.
    Thus SQL has the pretty much the same constraints in calling the PL language as other languages do. What SQL can do is use the PL engine's call interface and tell it "+execute this function and return the result of the function+".

  • Programmatically select global variable object

    Hello all.
    I have a rookie question that may have an easy answer (or perhaps you can direct me to a different method which is fine too).  I’m using a global variable in an instance where it’s controlled by a parent VI and read by multiple children VIs.  The global variable contains Boolean switches, each with a specific name.  
    If possible, I’d like to make the ‘child VI’ more generic and programmatically flexible so that I don’t have unique children.  That way, instead of four children, I just have one (makes debugging easier).  Here’s the crux of my question:  selecting which object is assigned to the global variable on the block diagram is done by clicking on it with the mouse – can I instead do that programmatically?
    More specifically, when using the global in children VIs (as instructed in the “Creating Global Variables” section of the help files), you can select the global vi and add it to your block diagram.  The next step is to select the front panel object to associate the placed variable with the proper data (you do this by mouse clicking the node you just created – see the attached image).  My question is, can I select the object associated with the placed node programmatically instead of needing to mouse click on it?
    Cheers!
    Attachments:
    ForumEX files.zip ‏31 KB

    Steve Chandler wrote:
    There is a better way of doing this as the others have already pointed out.
    Even Single Process Shared Variables with their API Interface would be better as Globals:
    Using this VI to read the variables gives you the ability to reference them with a string (Link to Variable). You may have to add an additional variable in future versions of your code, where you just need to add the new variable to the project and pass the string to the VI without changing the code. Single Process Shared Variables are based on Global Variables, which are usually just a bit faster. Single Process Variables can easily be converted to network variables.
    However, I agree with Damien that Data Value References would probably be the best sulution.
    Btw, there is a good KB talking about Globals: Are LabVIEW Global Variables good or bad, and when is it ok to use them?
    Christian

  • Global variable in BADI methods..

    Hi,
         How can i declare a global variable in BADI  method ,for example " Count type I".Can any one let me know ...
    Regards,
    Veera

    Hi,
    BADI is a just an interface definition that needs to be implemented by the customer. The final implementation of a BADI is always found in a class.
    You can define the variable as attribute and static if you want it to be accessed by all objects.
    I hope this answers your question
    Regards,
    Saurabh

  • Is it possible to use Global class variable in a  BAdi

    Hello Experts,
      I have a requirement wherein ,
             I need the Reference of the Class Object to be used in a BAdi. The class object is defined as a global variable.
    By any means can I use the reference variable inside the BAdi.
    thanks

    Hi Hari,
    U can access any objects or variables in BADI only if they are used as parameters in it.
    So please check whether that global object is declared as parameters in the corresponding BADI.
    If so, you can surely use it.
    Reward points if this is useful.
    Regards,
    kamalapriya

  • How do I store VI References in global variables and access them later

    From what I know, Labview automatically deletes VI references when they go out of use. Is there a way for me to override this so that I can access a set of preloaded references in a separate VI? Essentially I would like to open the VI's dynamically into the memory, store the references in global variables and access them at a later time. The VI's I'm referencing won't be known until runtime. I know its not the safest way to do it, but it would be the most productive on my end.
    Thank you
    Clay Upton

    I'm not sure what you mean by "a later time", but a VI reference will remain valid as long as the VI is in memory. If you don't unload the VIs, the references will remain valid.
    If you do need to unload the VIs, for whatever reason, I would suggest the following:
    Create a functional global as your interface for obtaining the references.
    Feed the paths to the VIs into the VI when initializing it (since you don't know which VIs in advance).
    When calling the VI to obtain the references, have the VI check them first (using the Not a Number... primitive). If it sees that they're invalid, it can open a new reference and return that.
    You should note that when a VI is removed from memory, the data space is used is released, so if those VIs are expected to hold data (using shift registers, etc.) this will be a problem.
    The description I've given will only be usable in certain instances (and it has its intricacies), but you didn't really give any details about what you're actually trying to accomplish.
    Try to take over the world!

  • How can I run two different vi's in same project which are accessing same global variable with out effecting the speed of the execution of both the vi's

    Hi
    I have build an Labview project with FPGA target .  I have configured an FPGA VI and an host Vi to acquire data and logged the data to a file and stored the latest data in a global variable simultanously. I have configured one more VI in the same project  to access the global variable.  I have build a dll to access both the VI as functions in LabWindows/CVI code.  My task in CVI is to update configured GUI with latest data periodically and run the  host VI continously for a long time and log the data to a file. GUI should update for every one second with latest data for this I am using the second VI in which I am accessing the global varibale in which the latest data has been stored in host VI.

    Duplicate Post (go here)

  • ESB - Global Variables? access of the variables outside the transformation

    I am working on one of the ESB services for my project(not looking for BPEL).
    1. Database adapter polls the data table (Say X and Column C1, C2, C3....Cn,CountofRecordsof Other table Y)
    2. Routing Service calls other database adapter for pulling the data from other table(Say Y) in another schema based on the C1,C2,C3 from X.
    3. After getting the count(i only need the count of records based on the C1, C2 and C3 conditions from Y table), I have to update the table X which corresponds to the row C1.
    The trouble what I have is
    1. How do I update the records which is for the C1 as the return of the value (which is the count) from the second adapter gives only the record count but it doesn't store the identifier from the first table.
    2.Is there anything called global variable concept in the ESB?
    3.How to access the varilable which are outside the schema in the current transformation. i.e, consider I have two schemas, Schema A and Schema B,where I am mapping the variables in the transformation, and considering I need a variable which is the schema which was populated with values during runtime in Schema C.
    Let me know if needs more clarification!
    thanks,
    Prashanth

    Hi,
    >>
    1. Database adapter polls the data table (Say X and Column C1, C2, C3....Cn,CountofRecordsof Other table Y)
    2. Routing Service calls other database adapter for pulling the data from other table(Say Y) in another schema based on the C1,C2,C3 from X.
    3. After getting the count(i only need the count of records based on the C1, C2 and C3 conditions from Y table), I have to update the table X which corresponds to the row C1.
    >>
    I suppose your RS at step 2 gives C1, C2, C3 as input and you invoke DB adapter to get count and forward response to other service.
    >>
    The trouble what I have is
    1. How do I update the records which is for the C1 as the return of the value (which is the count) from the second adapter gives only the record count but it doesn't store the identifier from the first table.
    >>
    If I understand your task correctly, try to use ESBREQUEST to accomplish your task.
    >>
    2.Is there anything called global variable concept in the ESB?
    >>
    No, there are no global variables in ESB, such in BPEL.
    I think, this should be known when you first starting a design your ESB processes.
    You can accomplish your task in next way:
    add global variable to your XML payload.
    For example, your XML payload looks like:
    <payload><some content/></payload>
    You can extend your XML schema to include global variable, so you payload may looks like:
    <payload><some content/><global_var>value</global_var></payload> (I think this's the best way, if you really need something that can be accessed in many parts of your ESB process)
    >>
    3.How to access the varilable which are outside the schema in the current transformation. i.e, consider I have two schemas, Schema A and Schema B,where I am mapping the variables in the transformation, and considering I need a variable which is the schema which was populated with values during runtime in Schema C.
    >>
    Sorry, I didn't understand. What schema do you mean? XML schema or DB schema?

  • BADI for BI  Global Variables in Reporting

    Hi all,
    We have requirement in our project like, we want to write BADI for all BI Global Variable. As already Customer exit is available for all the BI global variable , but as there is limitation of IF-ENIF Statements in Include program of Customer Exit Function module , So we are planning to go BADI. Does any one have idea on BADI for BI global variable.
    Thanks in advance

    Kindly check below link for your kind information.
    http://www.scribd.com/doc/40764652/SAP-BI-Global-Report-Variable-User-Exit-Modularization
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/60e34f63-f44c-2c10-488e-c89b04e0ca7c?quicklink=index&overridelayout=true
    How to declare Global variable in BADI
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/30de01e0-b6f5-2b10-fba1-b9193b82da2a?quicklink=index&overridelayout=true
    Re: virtual keyfigure using BADI
    Regards,
    Kamruz

Maybe you are looking for

  • Create a PDF with multiple images per page

    So this seems really simple, but i cannot figure it out... i am creating a PDF from 30 JPGs and rather than having an image on each page in the PDF I would like to set it up so that there are 6 images per page... any thoughts .. thanks in advance che

  • Updates for raw files from Nikon D5000 on a photoshop elements 7 /windows 7 system

    I have photoshop elements 7 but it won't open raw files from a nikon D5000 although I've followed the links and updated. It still says it won't open because it's the wrong type of file..I've downloaded a DNG converter but still nothing is happening.

  • Need help c JList & File opening

    I have several a JLists from which I've listed files on my drive. I wish to be able to open/run the files(eg word documents/excel/pdf) when the file of choice is double clicked. I want the file to be opened to be based on the JList choice. Please hel

  • Tool versions and Application versions

    hi, i have a doubt in basic concept of peopleosft regarding the realtion between tool versions and application versions I have two systems.. system1 : Application version 8.8 and tool version 8.49 system 2: Application version 8.9 and tool version 8.

  • Purge all Time Machine backups for a single user

    On my iMac I have my regular user account and a separate "admin" account that I use when things get goofy and I need to back completly out of my system and make sure nothing is in the way when doing admin related tasks. I was logged in and working on