About variables in scripts

what type of variables used in scripts to out put data

Hi
See the script symbols
A variable in SAPscript is called a symbol. There are the following types.
• System symbol (e.g. the number of the current page)
• Standard symbol (usable in any document)
• Program symbol (value from the print program)
• Text symbol (“local variable”)
The value of a symbol is text for using within SAPscript code and is represented by the symbol-name enclosed by ampersands. On seeing the tell-tale ampersands in SAPscript code, you sometimes need to figure out the symbol type.
goto any PAGEWINDOW's Text elements in Script (SE71)
from the Menu-> INSERT-> Symbols
you find all symbols here
System symbols
System symbols in a SAPscript form are comparable to system fields like SY-UZEIT in an ABAP program, and include these. The graphical editor offers three types of system symbol.
1. General system symbols
See the table TTSXY. PAGE is the most widely used. The list given in our BC460 training manuals is out of date.
2. SAPscript system symbols
See the dictionary structure SAPSCRIPT. SAPSCRIPT-FORMPAGES is the most widely used.
3. ABAP system symbols
For the ABAP system field SY-UNAME, say, the symbol is SYST-UNAME. [SYST is the dictionary structure for ABAP system fields.]
Sample code:
User: &SYST-UNAME&
Page &PAGE& of &SAPSCRIPT-FORMPAGES(C3)&
Standard symbols
Standard symbols are maintained centrally (in the table TTDTG via transaction SE75) for use in any document. Menu path:
Tools
Form Printout
Administration
Settings
Some standard symbols are SAP-standard and others are custom. Curiously, table TTDTG is cross-client although SAPscript forms are not.
The value of a standard symbol has to be defined for each language used. This gives a way to make a single SAPscript form multi-lingual.
We can take advantage to an extent of the central maintenance, though there is no guarantee that the available standard symbols will used in every appropriate context.
Standard symbols complicate searching a SAPscript form, since text like ‘Charity registration 211581’ may be hiding in a standard symbol.
Text symbols
A text symbol is declared and assigned to within the SAPscript code, and so obviously applies only to the current document. The command DEFINE is used, requiring /: in the tag column, as in the following examples.
/: DEFINE &COMP_NAME& = ‘University of Warwick’
/: DEFINE &WS_RATE& = &TAX_SUMM_C&
SCRIPT COMMANDS
ADDRESS : Formatting of Address
BOTTOM, ENDBOTTOM : Define Footer text in a window
BOX, POSITION, SIZE : Boxes, Lines and Shading
CASE, ENDCASE : Case Distinction
DEFINE : Value assignment to text symbols
HEX, ENDHEX : Hexadecimal values
IF, ENDIF : Conditional text output
INCLUDE : Include other texts
NEW-PAGE : Explicit forms feed
NEW-WINDOW : Next window main
PRINT-CONTROL : Insert print control character
PROTECT...ENDPROTECT : Protect from page break
RESET : Initialize outline paragraphs
SET COUNTRY : Country-specific formating
SET DATE MASK : Formating of date fields
SET SIGN : Position of +/- sign
SET TIME MASK : Formating of time fields
STYLE : Change style
SUMMING : Summing variables
TOP : Set header text in window MAIN
<b>Reward points for useful Answers</b>
Regards
Anji

Similar Messages

  • Documentation about variable types & their processing in i_step = 1, 2 etc.

    Hello experts,
    is there any documentation about variable types and their processing in i_step = 1, 2 etc.? I know there is note 492504 "Dependent customer exit-type variables", but I don't understand, whether a variable which is NOT "Ready for input" will be processed in i_step = 1 or not  (quote of SAP library: "i_step = 1: Call takes place directly before variable entry."). I experienced coincidentally, that some variables not "Ready for input" will be processed there and some not.
    Furthermore it is an error, isn't it? Why has a variable without input possibility to be processed before input? Is this really the case?
    Confused, any hints are welcomed!
    Regards M.L.

    for I_STEP = 1
    Call before the variable screen .
    for I_STEP = 2
    Call after variable entry. This step is only started up when the same variable is not input ready and could not be filled at I_STEP=1.
    for I_STEP = 3
    In this call, you can check the values of the variables. Triggering an exception (RAISE) causes the variable screen to appear once more. Afterwards, I_STEP=2 is also called again.
    for I_STEP = 0
    The enhancement is not called from the variable screen. The call can come from the authorization check or from the Monitor.
    There is a good HOW to Guide which explains the importance of I_STEP :
    http://service.sap.com/~form/sapnet?_SHORTKEY=00200797470000078090&_SCENARIO=01100035870000000112&_OBJECT=011000358700002762582003E
    Another from SDN:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/events/bw-and-portals-05/five%20ways%20to%20enhance%20sap%20bi%20backend%20functionality%20using%20abap.pdf

  • A few questions about indesign CS3 scripting

    1.     I often do one thing that pressing a Ctrl + ~, followed by a Ctrl + Shift + E. So I have spent one day trying to write a script today but failed to. I am going to be insane sooner or later.
    I have tried this line "app.menus[0].menuElements[10].menuElements[1].shortcutKey" for "Ctrl + Shift + E". This line is the farthest point I can get. It doesn't work.
    2.     if (app.menuActions.item (5262).name == "Stop BlackLining" || app.menuActions.item (5262).name ==  "Start BlackLining")
    is not equal to
    if (app.menuActions.item (5262).name == ("Stop BlackLining" || "Start BlackLining"))
    why?
    3.     I try this line "app.menuActions.item (5262).name" in ESTK. JavaScript Console reads "Start BlackLining".
    When I select and click the menu "Start BlackLining", the menu's contents changes to "Stop BlackLining". See below.
    Then I try the line refered above. JavaScript Console reads "Start BlackLining" again. As you can see, I consider that it should be "Stop BlackLining". The two different menus use the same index in Indesign.
    But when I only click their parent menu "BlackLining" once and then try the line, JavaScript Console reads "Stop BlackLining". That's normal. But how come? Do I click their parent menu to refresh all the menus to make it normal?
    Thanks in advance.

    Thanks for the tips. When I write a script, I will open all the Help Document, Object Model Viewer, Core JavaScript Classes and ScriptUI Classes.
    function(){return A.apply(null,[this].concat($A(arguments)))}
    function(){return A.apply(null,[this].concat($A(arguments)))}There are some reasons to avoid dealing with selections in scripts, but perhaps in this case it is correct to do so. Then you would use app.selection[0].fit(FitOptions.CENTER_CONTENT);
    After reading instruction in OMV, I can't figure it out what exactly "app.selection[0].fit(FitOptions.CENTER_CONTENT);" does.
    As the "Ctrl+Shift+E" is a shortcut customized for starting or stopping the function of the Plug-In "BlackLining" (The  Plug-In's name is BlackLining).
    function(){return A.apply(null,[this].concat($A(arguments)))}
    function(){return A.apply(null,[this].concat($A(arguments)))}In JavaScript you should use === and !== instead of == and !=, unless you want to be tripped up by weird type coercion problems.
    But anyhow, hwy would you think these would be equivalent?
    First, let's write out your first case parenthesized according to the JS precedence rules, so there is no ambiguity:
    ((app.menuActions.item(5262).name=="Stop BlackLining") || (app.menuActions.item(5262.name == "Start BlackLining"))
    Hopefully that's what you expect. Let's suppose it is the start case. Then that will evaluate to:
    ((false) || (true))
    which evaluates to true.
    But your second case is nothing like that.:
    (app.menuActions.item (5262).name == ("Stop BlackLining" || "Start BlackLining"))
    So first the interpreter evaluates ("Stop BlackLining" || "Start Blacklining"), that is, it takes the logical OR of two strings. This is not a very useful thing to do. It will always return the first one. That is ("a" || "b") always evalutes to "a". So then you have:
    (app.menuActions.item (5262).name == "Stop BlackLining")
    and if we're in the start case, then it is: false.
    I think there is no way to make it short, right?
    In fact, it's hard for me to find material of learning script t just execpt serveral PDFs (about basic of script) was added when the software was installed. I learned the C Language before. I try to remember the similar usage in C Language. Maybe I am wrong.
    function(){return A.apply(null,[this].concat($A(arguments)))}
    function(){return A.apply(null,[this].concat($A(arguments)))}As for your third question, well, the language is a bit confused, but menus can change their appearance when they are clicked on. That's a good reason not to use menu names or positions in scripts. Doesn't this blacklining extension (whatever it is) define a stopBlackLining() function somewhere in the DOM? Or someting like that?
    BTW, "BlackLining" is a Plug-In. Is Plug-In equal to extension in English? And DOM is short for document object model? It seems there are a lot more for me to learn.
    I want to tell you what kind of script I want to write. Make it simple. Forgiving my poor English.
    Let's get it started.
    I have to open many documents at the same time and then shut down the plug-in "BlackLining". So I have to press the shortcut "Ctrl+~", which means selecting the next document, and then press the shortcut "Ctrl+Shift+E", which is set by me and means starting or stopping the plug-in.
    When I finished some operions, which can't be proceeding while the plug-in "BlackLining" is on, I have to press the shortcut "Ctrl+~", and then press shortcut "Ctrl+Shift+E" to start "BlackLining".
    I have to do it over and over again day after day. I am almost insane. (Problem one)
    So, I want to write a script, let the computer do it for me. Further more, the shortcut "Ctrl+Shift+E" is used for both starting and stoping "BlackLining". Can't be set separately.
    At the same time, I don't know whether the "BlackLining" is on or not. What if it's off? Maybe old documents are on, some subsequent are off. See below:
    So I have to check the state before I press "Ctrl+Shift+E". (Problem two and three)
    Can you help me out? Thanks.
    If you need "BlackLining", you can download demo at http://www.blacklining.com/.

  • Doubt in printing variables in script

    Hi Experts,
    I am having small doubt.
    1).I need to write one condition for sales org 'US11' and divisions '20' or '40'. So the below logic is correct or not.
    if vbdkr-vkorg = 'US11' and and vbdkr-vtweg = '20' or vbdkr-vtweg = '40'.
    select........
    endif.
    2). i need th print these variables in script. can i use the logic like this.
    if &vbdkr-vkorg& = 'US11' and and &vbdkr-vtweg& = '20' or &vbdkr-vtweg& = '40'.
    &zkbetr1/ zpery1&
    else.
    &zkbetr/ zpery& (This is for sales org other than US11)
    endif.
    Thanks & Regards,
    Ramana.

    Hi,
    I think your condition would be more apt if you code this way:
    IF vbdkr-vkorg EQ 'US11' AND ( vbdkr-vtweg EQ '20' OR vbdkr-vtweg EQ '40' ).
    ENDIF.
    Also, look at putting the code into a subroutine called from your driver or subroutine program and then returning the value. The "logic" for determining the value to be printed can then be performed within the subroutine rather than the SAP script.
    Cheers,
    Aditya

  • How to access system variables in Script Component in data flow task in SSIS

    Hi,
    I am new to SSIS. Can someone tell me how to access system variable in Script Component in SSIS using C# code.
    Thanks

    You can use the System.Environment.GetEnvironmentVariable(...) to read the variables. An example is here:
    http://msdn.microsoft.com/en-us/library/y6k3c7b0.aspx
    Vikash Kumar Singh || www.singhvikash.in

  • Question about DBCA generate script o create RAC database 2 node cluster

    Question about creating two node RAC database 11g after installing and configuration 11g clusterware. I've used DBCA to generate script to create a rac database. I've set
    environment variable ORACLE_SID=RAC and the creating script creates instance of RAC1 and RAC2. My understanding is that each node will represent a node, however there should only be one database with a name of 'RAC'. Please advise

    You are getting your terminology mixed up.
    You only have one database. Take a look, there are one set of datafiles on shared storage.
    You have 2 instances which are accessing one database.
    Database name is RAC. Instance names are RAC1, RAC2, etc, etc.
    Also, if you look at the listener configuration and if your tnsnames is setup properly then connecting to RAC will connect you to either one of the instances wheras connecting to RAC1 will connect you to that instance.

  • Applescript "go to" command or pull variables from script?

    Is there a "go to line" command in Applescript?  I want to be able to create a dialog box to jump back to the previous box if a mistake was made.  I don't want to do a repeat because that will cause multipule chained repeats and it won't work.  I tried creating seperate scripts and that works fine for jumping around within the program.  But the variables get lost when a new script is ran.  is there a way to bring variables from other scripts into one script?

    This is what I have right now.  as you can see there are 3 variables that carry the needed info.  U
    ltimatley I'd like to have about 8 variables, all with different info. 
    I can do a repeat for each one until something is entered, but I cant do a back command for each entry. 
    That's the purpose for the "run 'script'" line in each section.  I'd have to do a repeat inside of a repeat and then overlapping repeats. 
    It won't let me do overlapping repeats.  what's the solution?
    run script fn
    script fn
              set first_name to ""
              set fName to display dialog "first name" default answer "" buttons {"cancel", "next"} default button "next"
              set first_name to text returned of fName
              if first_name = "" then
      run fn
              end if
    end script
    -- Last Name
    run script ln
    script ln
              set last_name to ""
              set lName to display dialog "last name" default answer "" buttons {"back", "cancel", "next"} default button "next"
              if button returned of lName = "next" then
                        set last_name to text returned of lName
              else if button returned of lName = "back" then
      run fn
              end if
              if last_name = "" then
                        run ln
              end if
    end script
    -- street number
    run script sn
    script sn
              set s_num to ""
              set sNum to display dialog "street number" default answer "" buttons {"back", "cancel", "next"} default button "next"
              if button returned of sNum = "next" then
                        set s_num to text returned of sNum
              else if button returned of sNum = "back" then
                        run ln
              end if
              if s_num = "" then
                        run sn
              end if
    end script
    -- ready steady write!
    display dialog first_name & last_name & s_num

  • Assigning value to a variable in Script Component.

    I'm pretty new to SSIS development and need to figure out a problem with assigning a value to a user defined variable. I created a pretty simple package. It reads a flat file, extracts date from a header record and subsequently uses derived column component
    to reformat data to the desired output format. One of the columns (FileRunDate,
    string, length 8) in the derived component is defined as a string and in the expression I'm assigning it to a variable I set earlier in the script component -
    @[User::vRunTimeDate]. When the process runs, the output file gets generated, however FileRunDate reflects
    originally set varible's value. It seems that the variable assignment in the script task does not work, even though in the debug mode, I do see how the value is being set. The variable has an attribute of ReadWrite. Is it due to the fact that the value is
    being set in the same workflow?
    Any feedback is greatly appriciated.

    Unfortunately I'm unable to add a screenshot of the process, for some reason I get an error message when I try to do that. In a nutshell the entire workflow consist of flat file source component, following by a script component (this is where I read and
    assign the variable) 
        public override void PostExecute()
            IDTSVariables100 vars;
            base.PostExecute();
            // Set run date
            if (strRunDate != null)
                VariableDispenser variableDispenser = (VariableDispenser)this.VariableDispenser;
                variableDispenser.LockForWrite("User::vRunTimeDate");
                variableDispenser.GetVariables(out vars);
                // Set the variable
                vars["User::vRunTimeDate"].Value = strRunDate;
                //Unlock the variable 
                vars.Unlock();
                //Variables.vRunTimeDate = strRunDate;
    then goes conditional split ( filtering out unwanted records), which is connected to a derived column component (this is where one of the columns get assigned a variable's value), one more script component (this where I identify
    specific data element and do a replace command) and finally flat file destination.
    BTW, the article in the provided URL clearly states that variable won't reflect assigned value till the entire workflow has finished. If that's the case, then I think I know my
    answer. Is there is such a thing as putting execution of different steps in a different step, so anything executed subsequently will see that value?

  • Using variables in script logic.

    Hi,
    I still haven't figured out how to assign a userdefined variable in a script.
    My case is that I in my script commits data several times, after every commit I need to do a new *XDIM_MEMBERSET. Every time the *xdim_memberset is exactly the same.
    Example - what I do now.
    *XDIM_MEMBERSET ACCOUNT="REVENUE"
    *XDIM_MEMBERSET VERSION="90"
    *rec
    *commit
    *XDIM_MEMBERSET ACCOUNT="REVENUE"
    *XDIM_MEMBERSET VERSION="90"
    *rec
    *commit
    Etc.
    It would be much easier, if I the beginning of each script for Account and Version defined a variable, and then having every *xdim_memberset use the variable. Then I only need to change the definition of the variable in the beginning of each script.
    Example - what I want to achieve.
    //Definition of constant variables.
    %ACCOUNT_VARIABLE%= "ACCOUNT = REVENUE"
    %VERSION__VARIABLE% = "VERSION=90"
    *XDIM_MEMBERSET %ACCOUNT_VARIABLE%
    *XDIM_MEMBERSET VERSION=%VERSION__VARIABLE%
    *rec
    *commit
    *XDIM_MEMBERSET %ACCOUNT_VARIABLE%
    +*XDIM_MEMBERSET VERSION=%VERSION__VARIABLE%
    *rec
    *commit
    I've looked at the *SELECT and *MEMBERSET - but can't really get the syntax to work.....
    Thank you,
    Joergen
    Edited by: Jørgen Dalby Andersen on Dec 30, 2011 7:58 AM

    Hi,
    when I use *XDIM_MEMBERSET ACCOUNT AS %TEST% = BAS(REVENUE) - it work fine.
    BUT ! after my first commit, it seems like the variable value is lost. And the *Xdim_memberset takes all.....
    Fortunately enough, *select still contains the variable value after *commit.
    Thanks,
    Joergen
    *Correction !
    It actually works, it still contains the variable value after commit !!
    Edited by: Jørgen Dalby Andersen on Dec 30, 2011 1:33 PM

  • Variable in  script logic

    Follow is the script code from previous post
    *XDIM_MEMBERSET ACCOUNT = ACC1
    *FOR %My_Var% = %ENTITY_DIM%
    *WHEN ENTITY
    *IS *
    *REC(EXPRESSION = (GET (ENTITY = %My_Var%.PROP1)), ENTITY = %My_Var%)
    *ENDWHEN
    *NEXT
    I understand that  both %My_Var% and %ENTITY_DIM% are variables, my question is how %My_Var% and %ENTITY_DIM% get the value during the process of the code, do we neeed to define the variable some where else before we use them? I remeber in FOX, we need to define the variable before we can use it.
    also is there a difference if I use $My_Var$ to replace %My_Var%?

    nilanjan,
    Thanks for the explanation,I have another question regarding to the variables.
    I need to get the YTD salary. in BPS the pseudocode code is as following:
    data YTD_salary type amount
    loop at each_month,
       YTD-Salary =  YTD-Salary  + current_month.
       if the  YTD-Salary  > FICA CAP.
       exit.
    Endloop
    How can we archive the same in BPC script logic with a variable to capture the YTD-Salary and pass it to next month?

  • Variable in script not printing

    Hi guys,
    I have form and driver program. while debugging in the driver program I can see the values of the fields, but in the script debugger I can not. Please have a look at my coding. Please correct me if I was wrong.
    SELECT SINGLE ktext
        FROM crtx
        INTO gv_ktext
        WHERE objid EQ iviqmel-arbpl. " value is there for GV_KTEXT which is global
      CALL FUNCTION 'OPEN_FORM'
        EXPORTING
          device                      = 'PRINTER'
          form                        = 'ZPMF_PMOR'
          dialog                      = space
          language                    = 'E'
          OPTIONS                     = gs_itcpo. " ....
      CALL FUNCTION 'WRITE_FORM'
        EXPORTING
          element = 'HEADER'
          window  = 'MAIN'.   " But not appearing in output
      " Closing forms and other coding here
      /E HEADER
      P1 Category: &GV_KTEXT& " In script, I am printing like this

    Hi Anil,
    Appreciate your reply.
    Here, I declared the variable globally in the print program and I am using only one client for development and testing.
    Here is my declaration part.
    DATA: gs_itcpo TYPE itcpo,
          gv_qmartx TYPE tq80_t-qmartx,
          gv_ktext  TYPE crtx-ktext.

  • Update and Write Back DataTable in Object Variable Using Script Component

    Hi All..
    I'm trying to update an Object Type Variable [ReadWrite] with a Data Flow Task Script Component. Variable is already holding a record set with Column(s) like, ID, Name, IsProcessed.
    Now in my Data Flow Script Component, I'm trying to 1st) Fill a DataTable with my variables value then 2nd) Loop through each Input Rows in Data Flow Component and accordingly if there is a match of ID then updating IsProcessed Column in DataTable. 3rd &Finally,
    Copy datatable back to Object Type Variable.
    Below is the code used and just for your ref. I tried Printing content of whole DataTable after Update. This looks perfect but not sure why my variable is able to capture it.
    using System;
    using System.Data;
    using System.Data.OleDb;
    using Microsoft.SqlServer.Dts.Pipeline.Wrapper;
    using Microsoft.SqlServer.Dts.Runtime.Wrapper;
    using System.Windows.Forms;
    using System.Collections.Generic;
    using System.Text;
    [Microsoft.SqlServer.Dts.Pipeline.SSISScriptComponentEntryPointAttribute]
    public class ScriptMain : UserComponent
    DataTable dt = new DataTable();
    OleDbDataAdapter adapter = new OleDbDataAdapter();
    List<string> listriuid = new List<string>();
    public override void PreExecute()
    base.PreExecute();
    public override void PostExecute()
    base.PostExecute();
    adapter.Fill(dt, this.Variables.varobjChildPackageLog);
    dt.AcceptChanges();
    foreach (DataRow row in dt.Rows)
    if (listriuid.Contains(row["ID"].ToString()))
    row["IsProcessed"] = "Y";
    // Just to see the Final Data Table Output
    //StringBuilder b = new StringBuilder();
    //foreach (System.Data.DataRow r in dt.Rows)
    // foreach (DataColumn c in dt.Columns)
    // b.Append(c.ColumnName.ToString() + ":" + r[c.ColumnName].ToString());
    //MessageBox.Show(b.ToString());
    this.Variables.varobjChildPackageLog = dt;
    dt.Dispose();
    adapter.Dispose();
    public override void RIUIDInput_ProcessInputRow(RIUIDInputBuffer Row)
    try
    listriuid.Add(Row.ID.ToString());
    catch (Exception ex)
    MessageBox.Show(ex.Message.ToString());
    Regards, Avik M.

    why do you need to do this in script task.
    This is just a matter of using lookup task while you retrive data from source itself to find the matches and use a derived column transform to check and set appropriate value for IsProcessed column. The object variable itself is not required and you dont
    even require a looping statement either!
    If both source and lookup tables are in same server then you can just wrap them inside source sql query itself to do matching and retrieve the value for IsProcessed within select statement itself in OLEDB Source inside data flow.
    Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs

  • Session variable and script error

    Hello;
    I am still writting this script that turns a bg sound on and
    aff for the whole site to remember. I have a good start on this
    code, but I am running into issues.
    1. I am trying to use a checkbox to make the selection, and
    when it is clicked, it will function without using a submit button,
    the java script I am using isn't doing the job allowing the
    checkbox to act as a link so to speak.
    2. I need to make this script into a session variable. So
    that when the decision is made, the site will remember it.
    3. there might be a problem in my IF statement.
    Can someone please help me out? I am attaching the code. It
    is using a DB that has a yes/no box in the table this sound code is
    accessing.
    Thank you.
    Phoenix

    A Quess...
    Remove the OnClick in the form
    <form onClick="category.submit();">
    Place it in the input type?
    <input type="checkbox"
    onClick="category.submit();">

  • Use of Variable in Script Logic

    Dear All,
    We are working on a BPC Script Logic involving depreciation calculation, which calls an implementation of the BAdI BADI_UJ_CUSTOM_LOGIC. We are passing some parameters from the script logic to the BAdI. There are two parameters to be passed: an account number (Account in which the posting will happen), and the rate (rate with which depreciation will be affected). The parameters are stored in the Dimension member of the account dimension and need to be fetched from there. We are using the following piece of code to achieve this:
    *INCLUDE FUNCTIONS.LGF
    [#PERC] = PRO([%ACCOUNT_DIM%].CURRENTMEMBER,DEP_PERCENTAGE)
    [#DEPACCOUNT] = PRO([%ACCOUNT_DIM%].CURRENTMEMBER,DEP_ACCT)
    *START_BADI DEPR
    QUERY = ON
    WRITE = ON
    DEPACCT = [#DEPACCOUNT]
    PERCENTAGE = [#PERC]
    *END_BADI
    Here, FUCNTIONS.LGF contains the PRO function, which fetches the account and percentage properties from the account dimension member. Problem is, when we refer to the temporary variables within our code using the variables [#DEPACCOUNT] and [#PERC], we encounter a short dump for CX_SY_CONVERSION_NO_NUMBER. We suspect that instead of passing the parameter values, the logic is passing the variable name as the value. How do we rectify this? What is the correct syntax for passing such a parameter to the BAdI? Any ideas?
    Thanks in Advance,
    Sid

    Hi Ethan,
    Thanks for the answer. Unfortunately, even after trying out your solution with K2 variables, we are getting the same dump, this time the log says:
    An exception with the type CX_SY_CONVERSION_NO_NUMBER occurred, but was neither handled locally, nor declared in a raising clause
    The argument '%PERC%' cannot be interpreted as a number
    We are starting to think that maybe only substitution variables can be passed as parameter to the BAdI call, because whenever we use a local variable, we end up in passing the variable name to the BAdI, and not the variable value. We digged through the SAP Help, following is the excerpt from there:
    Run the following instruction to call custom ABAP programs: where filter_value_of_your_BADI_implementation is the name of the filter you provided during the BADI implementation of UJ_CUSTOM_LOGIC BADI.
    *START_BADI <filter_value_of_your_BADI_implementation>
    <key1> = <value1>
    <key2> = <value2>
    *END_BADI
    where filter_value_of_your_BADI_implementation is the name of the filter you provided during the BADI implementation of UJ_CUSTOM_LOGIC BADI.
    Does this mean we can only pass <key>:<value> pairs, and not <key>:<variable> pairs? Is there any instance / documentation which points to this (or the contrary)?
    Awaiting answers.
    Thanks and Regards,
    Sid

  • About hr-abap(script)

    hi,
             can any one send the program about script in hr-abap......inlcuding driver program and layout set,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

    hi,
             can any one send the program about script in hr-abap......inlcuding driver program and layout set,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

Maybe you are looking for

  • LACK OF HELP FROM BT

    Does anyone else share my frustration with BT for their lack of help over setting up their Home Hub 5 (HH5)? I have just taken out an Infinity contract and had my new HH5 installed. I have some fairly basic requirements for setting up my home network

  • Reading pdf files in Firefox

    Firefox for Android seems to have lost the ability to display pdf files from websites. Instead it downloads 2-3 files named with jumbled characters including the word "part", none of which I can open. There seems to be some interaction with MobiSyste

  • Customer consignment with intercompany process

    Hello, Has anybody worked on Customer consignment with intercompany process. If yes, what are the main points to be taken into or configured for this process ? regds

  • Dummy Companies in Sap software

    Hi I have a problem in my SAP Software installed recently. I dont have any example companies in my system (like 1000, IDES, etc) to refer to. I dont even have the types of currencies and countries, chart of accounts,fiscal year, field status variants

  • Deleting old items in TC?

    Can I delete manually in TC? And how do I know what to delete? Is it so that all bundles are 100% complete? So that I can keep ex. one bundle form 2010, one from 2011, 2012 and so on? To free up space on the TC and so that the oldest copies don't get