Use Exit Variable - Reference Data?!?

I am deriving currency from cost center using user exit.  My function module runs fine on the test cases.  Now, I am using the variable in a template.  It's a simple template with cost center in the header data, GL account in the lead column and amount key figure in the data column.  I am using the variable under the data column along with the key figure.  When the user opens the template, he needs to enter a cost center.  As soon as the cost center is entered, there is an error thrown with the message "Values do not agree with the reference data - Message:UPC523".  I do not know how to resolve this error message.  Could someone please post their inputs?  As always, I will reward helpful contributions.  Thanks.

Hi Sameer,
The message means that the value of cost center does not match with the reference master data available in the system.
When the user enters the cost center value, the application would validate the same with the available values for that particular Infoobject, if the user is not allowed to enter "user defined values". If these values do not match with the master data values it will give you this message.
You may not get this messages if the user has the option to enter "user defined values".
To resolve the error Check the master data for cost center, activate master data.
Hope it helps.
Anurag

Similar Messages

  • Using Global Variables in Data Quality Address Cleanse Transforms

    I am currently developing in Data Services 12.2.
    I am trying to dynamically populate the List Owner information in the option tabs of the USA Regulatory Address Cleanse by using global variables.  It populates the 3553 with the variable name instead of the value assigned.
    According to the Technical Manual, it is possible to use global variables in Data Quality Address Cleanse transforms:
    However, you can use substitution parameters in all places where global variables are supported, for example:
    Query transform WHERE clauses
    Mappings
    SQL transform SQL statement identifiers
    Flat-file options
    User-defined transforms
    Address cleanse transform options
    Matching thresholds
    Does anyone know if it is possible to use global variables in the option tab of the Address Cleanse; if so, can you describe how it is done?
    Thanks in advance,
    Rick

    Hi,
    U can refer to the following links in help.sap.com
    GlobalContainer Object
    http://help.sap.com/saphelp_nw04/helpdata/en/75/8e0f8f3b0c2e4ea5f8d8f9faa9461a/content.htm
    Container Object
    http://help.sap.com/saphelp_nw04/helpdata/en/78/b4ea10263c404599ec6edabf59aa6c/content.htm
    Also some of the RUN TIME CONSTANTS are available in your BPM. So if you are trying to retrieve those variables in your Mapping(that is used in BPM), also read the following thread.
    Re: Message id in BPM
    Cheers,
    Siva Maranani.

  • Problem with customer exit variable on date range

    Hi All,
    I have customer exit variable on date range. In the selection screen it has to give the week range  as a default (05/21/2009 to 05/27/2009).
    Earlier its working fine and from yesterday onwards it is not working properly. yesday onwards default date range was not displaying in selection screen.
    Wht would be the problem.
    Thanks in Advance

    Hi Ashish,
    I checked every thing what u told earlier. Every thing is fine.
    And another thing is
    I have routine in infopackage level. Since day before yesterday it was working fine and yesterday onwards it was not working.
    Eg: budat will take the data based on routine for the week. But yesterday onwards it is not picking up the data.however I have the data in datasource for the week.
    Wht would be the problem. I debuged the code and its working fine.
    Sekhar

  • BW Master Data for Customer Exit Variable Reference

    Good day Experts,
    I have several queries that I would like to remove the hard coding of values on to prevent yearly maintenance. In these queries there are two conditions each condition is on different key figures that is amount by year.  The query is only to report on data that for the two amounts (separated by year) is greater than the specified values. I want to change the condition so the value is no longer hard coded so the query will role automatically as the time period changes. The year amount values that the condition will need to reference are not currently stored in our BW system. I would like to create master data that is maintained directly in the BW system for the amounts that a variable for the condition in the query can then access.
    I know it can be set up as master data and then referenced through a customer exit variable but when I set up the master data if I do the Amount as a key figure I cannot maintain the key figure value for the master data manually in BW, if I set the Amount up as a numeric characteristic then I canu2019t directly use a decimal. Am I missing something in the key figure setup then referencing the key figure as an attribute of the year value or do I need to do it as a characteristic and use a conversion routine or something for data manipulation?
    Can someone please give me some guidance to what the best way to do this is?
    The data necessary master data for storage in BW is the YEAR and a single dollar value:
    For Example:     
    Year          Amount
    2009           101.50
    2008          207.80
    2007          807.40

    I figured out that I can use an amount in the master data and maintain the amount manually as long as I use the amount with a currency instead of setting the currency in the key figure.

  • Exclude a hierarchy node by using exit variable (not in query designer)

    Hi gurus!!
    I have a hierarchy for the infoObject 0COSTELMNT. Depending on the user who executes the report, the node '0599ADJUSTMENTS' must be displayed or not.
    I am trying to solve it by using an exit variable:
    Varible Type: Hierarchy Node
    Processing : Exit
    On the exit, I have entered the following code:
          IF ( sy-subrc = 0 ).
              l_s_range-sign = 'E' .
              l_s_range-opt  = 'EQ' .
              l_s_range-low = 'AJUSTES'.
              APPEND l_s_range TO e_t_range.
         ENDIF.
    But unfortunately does no work!!
    Any ideas?
    Thanks in advance
    Regards.
    Carmen Rodríguez

    Hi,
    Check the below link gives good knowledge on variables:
    http://help.sap.com/saphelp_nw04s/helpdata/en/cf/579b3c494d8e15e10000000a114084/content.htm
    Reg
    Pra

  • SQL Query using a Variable in Data Flow Task

    I have a Data Flow task that I created. THe source query is in this file "LPSreason.sql" and is stored in a shared drive such as
    \\servername\scripts\LPSreason.sql
    How can I use this .sql file as a SOURCE in my Data Flow task? I guess I can use SQL Command as Access Mode. But not sure how to do that?

    Hi Desigal59,
    You can use a Flat File Source adapter to get the query statement from the .sql file. When creating the Flat File Connection Manager, set the Row delimiter to a character that won’t be in the SQL statement such as “Vertical Bar {|}”. In this way, the Flat
    File Source outputs only one row with one column. If necessary, you can set the data type of the column from DT_STR to DT_TEXT so that the Flat File Source can handle SQL statement which has more than 8000 characters.
    After that, connect the Flat File Source to a Recordset Destination, so that we store the column to a SSIS object variable (supposing the variable name is varQuery).
    In the Control Flow, we can use one of the following two methods to pass the value of the Object type variable varQuery to a String type variable QueryStr which can be used in an OLE DB Source directly.
    Method 1: via Script Task
    Add a Script Task under the Data Flow Task and connect them.
    Add User::varQuery as ReadOnlyVariables, User::QueryStr as ReadWriteVariables
    Edit the script as follows:
    public void Main()
    // TODO: Add your code here
    System.Data.OleDb.OleDbDataAdapter da = new System.Data.OleDb.OleDbDataAdapter();
    DataTable dt = new DataTable();
    da.Fill(dt, Dts.Variables["User::varQuery"].Value);
    Dts.Variables["QueryStr2"].Value = dt.Rows[0].ItemArray[0];
    Dts.TaskResult = (int)ScriptResults.Success;
    4. Add another Data Folw Task under the Script Task, and join them. In the Data Flow Task, add an OLE DB Source, set its Data access mode to “SQL command from variable”, and select the variable User::QueryStr.
    Method 2: via Foreach Loop Container
    Add a Foreach Loop Container under the Data Flow Task, and join them.
    Set the enumerator of the Foreach Loop Container to Foreach ADO Enumerator, and select the ADO object source variable as User::varQuery.
    In the Variable Mappings tab, map the collection value of the Script Task to User::QueryStr, and Index to 0.
    Inside the Foreach Loop Container, add a Data Flow Task like step 4 in method 1.
    Regards,
    Mike Yin
    TechNet Community Support

  • Customer exit variable for date range for the last day

    Hi,
    If user enters date ranges in variable
    suppose user enters 9/1/2010 to 9/15/2010 and we have to calculate currency conversion based on last day i..e 9/15/2010 . 08
    2)User input is date range 08/01/2010 to 08/30/2010
    I need from the customer exit 08/30/2010 (on last day) to calculate currency conversion.
    Can anyone help me with ABAP code to achieve this customer exit?And please tell me how to proceed step by step
    Sridhar

    create a variable to enter date range (ZDATE1)
    create a key date variable(ZDATE2) with processing type customer exit, should not be ready for input.
    In the exit ZXRSRU01 write below code.
    DATA: l_s_range TYPE rsr_s_rangesid,
          loc_var_range LIKE rrrangeexit.
    WHEN 'ZDATE2'.
        IF i_step = 2.
           read table i_t_var_range INTO loc_var_range
                    with key vnam = 'ZDATE1'.
            CLEAR l_s_range.
            l_s_range-low = loc_var_range-high.
            l_s_range-sign = 'I'.
            l_s_range-opt = 'EQ'.
            APPEND l_s_range TO e_t_range.
        ENDIF.

  • How Can I use a Variable  in Data Controls query. Frank Kindly check...

    Hii,
    I am using JDeveloper 11g ADF BC.
    My Requirement is that I hv a login screen which is taken from [http://blogs.oracle.com/shay/simpleJSFDBlogin.zip].
    I hv attached BC in this application. I want to use the login usercode in the next pages after login screen. Next screen contains 3 list items which will be populating based on the user. So I created <af:selectOneChoice> using the BC( Just drag & dropped the column into the page from the data controls). But in the data control i want to use this usercode for passing the condition. Now Data is coming without any condition.
    So How can I use the usercode in the Data controls query.
    When I tried to display the usercode in the next page it is showing by binding the value. its code is follows
    <af:outputText value="#{backing_getUser.uid}"
    The program for checking the username & Password is follows.
    package login.backing;
    import oracle.adf.view.rich.component.rich.RichDocument;
    import oracle.adf.view.rich.component.rich.RichForm;
    import oracle.adf.view.rich.component.rich.input.RichInputText;
    import oracle.adf.view.rich.component.rich.layout.RichPanelFormLayout;
    import oracle.adf.view.rich.component.rich.nav.RichCommandButton;
    import java.sql.*;
    import java.util.List;
    import java.util.Map;
    import oracle.adf.view.rich.component.rich.output.RichMessage;
    import oracle.jdbc.OracleDriver;
    public class GetUser {
    private RichInputText uid;
    private RichInputText pid;
    private RichCommandButton commandButton1;
    private RichInputText inputText1;
    private RichInputText inputText2;
    public void setUid(RichInputText inputText1) {
    this.uid = inputText1;
    public void setPid(RichInputText inputText2) {
    this.pid = inputText2;
    public RichInputText getUid() {
    return uid;
    public RichInputText getPid() {
    return pid;
    public void setCommandButton1(RichCommandButton commandButton1) {
    this.commandButton1 = commandButton1;
    public RichCommandButton getCommandButton1() {
    return commandButton1;
    public String login_action() {
    // Add event code here...
    String user = this.getUid().getValue().toString();
    // String pass = inputText2.getValue().toString();
    String pid = this.getPid().getValue().toString();
    Connection conn;
    conn = getConnection();
    Statement stmt = conn.createStatement();
    ResultSet rset = stmt.executeQuery ("SELECT usercode FROM guser where usercode = '"+user.toUpperCase()+"' and pwd=F_TEST('"+pid.toUpperCase()+"')");
    if (rset.next()) {
    conn.close();
    return "good";
    conn.close();
    } catch (SQLException e) {
    System.out.println(e);
    return "bad";
    public static Connection getConnection() throws SQLException {
    String username = "ACCTS";
    String password = "ACCTS";
    String thinConn = "jdbc:oracle:thin:@SERVER1:1521:G5PS";
    DriverManager.registerDriver(new OracleDriver());
    Connection conn =
    DriverManager.getConnection(thinConn, username, password);
    conn.setAutoCommit(false);
    return conn;
    public void setInputText1(RichInputText inputText1) {
    this.inputText1 = inputText1;
    public RichInputText getInputText1() {
    return inputText1;
    public void setInputText2(RichInputText inputText2) {
    this.inputText2 = inputText2;
    public RichInputText getInputText2() {
    return inputText2;
    -----

    Hi,
    I didn't look at the example, but if you want to secure your application then you should use container managed security. Read this .
    Anyway, you could add this before return "good"; in your login_action()
    FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("username", user);Then, you can access this from anywhere in the application by using #{sessionScope.username}.
    Pedja

  • Use presentation variable in date filter

    Hi,
    I have a Date presentation variable pvEffDt whose value is set in a dashboard prompt. How do I access this variable in a Date between filter? I actually need data for chosen date's previous month (weird, why don't I choose the previous month itself. yeah true, but I want to try something else).
    I have tried the following but to no avail - CAST (TIMESTAMPADD(SQL_TSI_MONTH, -1, cast('@{pvEffDt}[MM/DD/YYYY]' as TIMESTAMP) as DATE)
    I get the following error -
    Odbc driver returned an error (SQLExecDirectW).
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 27002] Near <(>: Syntax error [nQSError: 26012] . (HY000)
    SQL Issued: {call NQSGetLevelDrillability('SELECT "AFM"."GRP_ID" saw_0, "HIER_DEF"."HIER_DSC" saw_1, "HIER_DIM"."CD_DSC_LV1" saw_2, "AFM"."HIER_ID" saw_3, "AFM"."ATTR_REF_DIM_KEY" saw_4, "AFM"."RPTD_CURCY_CD" saw_5, "AFM"."BMARK_ID" saw_6, "AFM"."WT_TOT_ADJ_ACCT" saw_7, "AFM"."WT_TOT_ADJ_BMARK" saw_8, "AFM"."PCT_CONTRIB_BASE_ACCT" saw_9, "AFM"."PCT_CONTRIB_LOCL_ACCT" saw_10, "AFM"."PCT_CONTRIB_BASE_BMARK" saw_11, "AFM"."PCT_CONTRIB_LOCL_BMARK" saw_12, "AFM"."SEC_SEL_BASE" saw_13, "AFM"."SEC_SEL_LOCL" saw_14, "AFM"."MKT_ALLOC_BASE" saw_15, "AFM"."MKT_ALLOC_LOCL" saw_16, "AFM"."INTERACTION_BASE" saw_17, "AFM"."INTERACTION_LOCL" saw_18, "AFM"."CURRENCY_EFFECT" saw_19, "AFM"."TOT_EFFECTS_BASE" saw_20, "AFM"."TOT_EFFECTS_LOCL" saw_21, "AFM"."SEC_SEL_BASE" - "AFM"."SEC_SEL_LOCL" saw_22, "AFM"."MKT_ALLOC_BASE" - "AFM"."MKT_ALLOC_LOCL" saw_23, "AFM"."INTERACTION_BASE" - "AFM"."INTERACTION_LOCL" saw_24, "AFM"."TOT_EFFECTS_BASE" - "AFM"."TOT_EFFECTS_LOCL" saw_25, "AFM"."EFF_DT" saw_26 FROM "Perf Attr" WHERE ("HIER_DIM"."CD_DSC_LV1" <> ''Total'') AND ("AFM"."GRP_ID" = ''3699'') AND ("AFM"."ATTR_REF_DIM_KEY" = 2) AND ("AFM"."EFF_DT" = ADD_MONTHS(DATE ''10/31/2012'', -1))')}
    Regards,
    Vijay.

    I had already tried this before and it didn't work either.
    Just to point it again, I am defining this In the filter, under More Options->Presentation Variable.
    i have also tried doing "Convert this filter to SQL" and passed
    ("ATTR_FACT_MTHLY"."EFF_DT" IN (ADD_MONTHS(@{pvEffDt}, -1)))
    Just to verify the same, I tried
    ("ATTR_FACT_MTHLY"."EFF_DT" IN (ADD_MONTHS(TO_DATE('31/10/2012', 'DD/MM/YYYY'), -1)))
    but even this did not work.
    I really don't know how to make it work. I simply need the filter to have the value "Chosen date's previous month".

  • How to use string Variables for data provider names

    Really what I need to be able to do is insert the variable
    name in this:
    dataProvider="{chartXML2.lastResult.month.day}"
    I need to replace the "month" with a string variable name
    (i.e public var monthName = "January";)
    I also need to do the same for the categoryfield as it will
    not let me do categoryfield=$String.
    In PHP this is incredibly easy to do. You just say
    blah=$string . In fact, in PHP you can embed variable names
    everywhere. Its very powerful. For instance, in php, for the
    dataprovider issue above, i'd just do
    dataProvider="{chartXML2.lastResult.$StringName.day}"
    and it'd work just fine. Whats the syntax for doing this in
    Flex?

    You can use bracket notation. But don't. Use a reuslt handler
    to wrap the xmllist in an XMLListCollection instance variable and
    bind to that.
    Tracy

  • Populate user exit Variable with User Authorizations using ABAP?

    Hi, Does anyone know of a way to populate a user exit variable (with ABAP) with the Authorization Values for a user running a report?  I am turning off authorizations for our InfoProvider using RSSM and want to populate a variable instead and use the variable as a filter.

    Hi Kenneth ,
    You need dynamic authorization in your report .This can be done at query runtime by using exit variable and writing cmod code for the same .
    This code will read authorization maintained at runtime of query in i_step = 1 and will pass input var values accordingly .
    For step by step information you can access this document .
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/f0f9f33c-0f17-2d10-d3a2-ae52ccd00780?quicklink=index&overridelayout=true
    Hope this will be helpful .
    Regards,
    Jaya Tiwari

  • Problem in transporting the Customer exit variable

    Hi all,
    i have careated a variable to capture the current date in my report, with the processing type, Customer Exit. and, its getting populated fine in my DEV environment. basically, i have to compute the number of days, in which net due date is being compared to the current date.  when i transport this to the QA environment, the values for number of days is gettting some junk value, wherein in DEV its showing the exact values. It seems i have to take cetain measures in transportation of the Customer Exit.
    please advice.
    Thanks in advance
    Sneel

    Hello ,
               In the Quality after you run the report check in the layout option>display text elements> variables and check what value is displayed for the use exit variable , if it is correct then problem may be in the selection you gave when you run the report if the user exit variable value is wrong , then set a break point in the code and run the report from rsrt and check where the error is.
    hope it is clear
    assign points if useful

  • Exit variable restriction

    hi gurus
    I use exit variable in one planning level, in the exit coding, multiple single values (multiple "EQ") are exported as result, however the restriction is at most 9999 single values are allowed in the data structure, is there any possibility to extend this restriction, for example 999999? I know the performance maybe slowed down, but first of all I need solution to fulfill my functionality.
    any hints are highly appreciated.
    Patrick

    Hello Ravi
    thanks for your reply, my business requirement is quite complicated, I will explain as follows:
    we have two rows in the cube,
    CharA/CharB/CharC/KfigD
    10001/X/01/100    --->  (row 1 - for process 1)
    10001/#/#/200     --->  (row 2 - for process 2)
    We also have two separate processes on row 1 and row 2, and those processes are controlled by two different departments, both rows cannot lock each other, hence, different values of CharB and CharC is solution for that.
    In process 1, depends on the business logic, row 1 may be reposted to
    CharA/CharB/CharC/KfigD
    10001/X/02/100   
    or be reposted to
    CharA/CharB/CharC/KfigD
    10001/X/03/100   
    let's assume process 1 repost row 1 to
    CharA/CharB/CharC/KfigD
    10001/X/02/100    ---> (row 1' )
    Meanwhile, process 2 never changes values of CharB and CharC, but it needs to know the latest status of process 1, i.e. for process 2, there is a variable and a layout, the variable is for user selection of CharC, if user select value "03" of Char C(to know the latest status of process 1), then there is no any rows in layout, if user select value "02" of CharC, then one row appears in the layout.
    Because CharC always equals to "#" in process 2, we cannot use variable of CharC in the level of the layout( otherwise, the layout always select no rows for process 1), therefore, I define an exit variable of CharA for the level(meanwhile the package) which the layout belongs to, then use function module "UPC_DATA_READ" to read the latest data of process 1 which reponds to user selection of variable of CharC in process 2, then collect values of CharA into the exit variable, since CharA is the linkage of process 1 and process 2, finally, layout in process 2 can read real-time status of process 1.
    However, the exit variable only supports 9999 single values, but CharA of row 1 can extend to 10000+ which fulfills the condition like CharC = "02", in this case, my solution is defeated, for my first willing, it's better for me to extend the restriction of 9999
    sorry for the complex logic, but I urgently hope to solve the problem.
    Patrick

  • Query variant with exit variable on selection

    Hello,
    I have created a query with exit variable for Date. This date will be defauled to system date -1 using the exit code.
    This variable is ready for input with default value. If user want to change the default value he can change it.
    however when i save the variant for this query, the default value is not getting populated automatically.  The value of this field in variant is date on which the variant is created.
    Is there ay way to make sure the variant will always pick up the value from Exit

    Hi,
    I am trying to create a variant from web template.
    In web template, i am not getting this option of not saving value for calendar day.
    I think this option is available only from RSRT.

  • How to use a variable to specify the color when setting an attribute

    Hi
    We are using BI Publisher (XDO) embedded in e-Business Suite. So we are effectively on version 5.6.3.
    I would like to conditionally set the background-color attribute of cells in a table by using a variable reference; something like this (the ways in which I have tried):
    <?attribute@incontext:background-color;$exEmpBGColor?>
    <?attribute@incontext:background-color;'{$exEmpBGColor}'?>
    The 'standard' way of doing this would be:
    <?attribute@incontext:background-color;'#CCCCFF'?>
    Can anybody please help? (i.e. is this even possible?)

    Thanks that works.
    I was using a variable, so I adapted your example to use the variable, not an element.
    <xsl:attribute xdofo:ctx="block" name="background-color"><xsl:value-of select='$exEmpBackgroundColour' /></xsl:attribute>
    Regards

Maybe you are looking for