Help regarding VARI() function

Hi All,
    I need more information, and if possible some example on how to use VARI() function.
    Thanks for your help.
Regards,
Shankar

Hi Shankar,
     While VARC function is used to get the number of values available for the
     variable, as Anand mentioned VARI function is used to get the value of the
     variable.Usually they are used in conjunction.
     Here is the sample code:
    DATA L_COUNTRY TYPE 0COUNTRY.
DATA L_COUNT TYPE I.
DATA L_ENTRIES TYPE I.
L_COUNT = 0.
L_ENTRIES = VARC(COUNTRY).
DO.
L_COUNT = L_COUNT + 1.
L_COUNTRY = VARI(COUNTRY, L_COUNT).
{L_COUNTRY,NETSALES} = {L_COUNTRY,VOLUME} * {#,PRICE}.
IF L_COUNT = L_ENTRIES.
EXIT.
ENDIF.
ENDDO.
Hope this helps.
Cheers
Srini

Similar Messages

  • Help regarding search functionality... pls...

    Hello All,
    While selecting a Business Scenario/Process/Step in SolMan, the search functionality is not working.
    Is there any configuration that needs to be done for the search functionality to work?
    Pls help. Any information in this regard will be greatly appreciated.
    best regds,
    Alagammai.

    Hello SolMan Gurus,
    Pls help me.
    Does anybody have any idea about why the search functionality is not working when we try to select the Biz Scenarios from the Biz Process Repository?
    Any configuration needs to be done for the search functionality to work?
    Are is that a known issue with SolMan?
    Pls advise.
    best regds,
    Alagammai.

  • Help regarding the Function Module GUID_CREATE

    Hi Experts,
    Can some one explain the functionality of GUID_CREATE function module.Thanks in advance.
    With regards,
    Srini...

    Hello,
    Guid for unique identification assigned list
    It think it will generate the one unique key in the program.
    DATA: con_log_guid   TYPE  guid_16.
    CALL FUNCTION 'GUID_CREATE'
      IMPORTING
        ev_guid_16 = con_log_guid.
    WRITE con_log_guid .
    Try this example it is generating a 16number id.

  • Help regarding SGOSDS function group (attaching Notes and all)

    Hi All,
    we have a requirement where in BSP page we have to attach Notes and also some URLs to one particualr service ticket at the time of creation of that service ticket in BSP.
    now user again wants to look at that created note and attached URLs.
    In R/3 to do this there are function modules in function group SGOSDS. 
    is there any way to use the same functionality to attach and display these Notes and URL.
    Thanks in Advance,
    Vithal

    Hi,
    Any existant FM can be called from the BSP via the system itself or if you want to do this via RFC (see http://help.sap.com/saphelp_bw31/helpdata/en/22/042537488911d189490000e829fbbd/frameset.htm for this).
    You have to create the screens on your own though.
    Eddy

  • Please help regarding the function module 'MESSAGE_TEXT_BUILD'

    hii i am a new employee.
    can anyone please explain wat the following code is doing
    IF sy-subrc = 0.
    l_mstring = t100-text.
    IF l_mstring CS '&1'.
    REPLACE '&1' WITH wa_messtab-msgv1 INTO l_mstring.
    REPLACE '&2' WITH wa_messtab-msgv2 INTO l_mstring.
    REPLACE '&3' WITH wa_messtab-msgv3 INTO l_mstring.
    REPLACE '&4' WITH wa_messtab-msgv4 INTO l_mstring.
    ELSE.
    REPLACE '&' WITH wa_messtab-msgv1 INTO l_mstring.
    REPLACE '&' WITH wa_messtab-msgv2 INTO l_mstring.
    REPLACE '&' WITH wa_messtab-msgv3 INTO l_mstring.
    REPLACE '&' WITH wa_messtab-msgv4 INTO l_mstring.
    ENDIF.
    CONDENSE l_mstring.
    i am supposed to use a function module for it
    i have got a function module.
    but i am not understanding wat fields shd i put in it
    the function module is
    CALL FUNCTION <b>'MESSAGE_TEXT_BUILD'</b>
    EXPORTING
    msgid =
    msgnr =
    MSGV1 = ' '
    MSGV2 = ' '
    MSGV3 = ' '
    MSGV4 = ' '
    IMPORTING
    MESSAGE_TEXT_OUTPUT =
    can anyone tell wat shd i put on msgid ,msgnr and other fields.
    [email protected]

    Hello,
    Guid for unique identification assigned list
    It think it will generate the one unique key in the program.
    DATA: con_log_guid   TYPE  guid_16.
    CALL FUNCTION 'GUID_CREATE'
      IMPORTING
        ev_guid_16 = con_log_guid.
    WRITE con_log_guid .
    Try this example it is generating a 16number id.

  • Please help regarding method/function sign up validation with mysql jdbc.

    HI guys,
    I am have been fixing this problem for days, hope that someone could help me find the bug on my code.
    I have 3 files:
    1.WithAuth.java - for database jdbc mysql connection
    2.WithAuthMet.java - method that will read any variables that will be passed to it. this method is waiting for two variables, a and b. a for userName and b for userPassword.
    3.WithAuthTest.java - the testing class, this is where i declare my sample control data to test the database connection and query.
    here's the actual codes:
    WithAuth.java
    package com.Auth;
    public class WithAuth {
        static String userName = "root";
        static String userPassword = "";
        static String databaseUrl = "jdbc:mysql://localhost:3306/javatowebservice";
        static String userQuery = "select * from userlogin";
    }WithAuthMet.java
    - this is where the error is and where I messed up.
    package com.Auth;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.Statement;
    public class WithAuthMet extends WithAuth {
        public void connect(String a, String b)throws Exception{       
            //try {
                Class.forName ("com.mysql.jdbc.Driver").newInstance ();               
                Connection conn = DriverManager.getConnection (databaseUrl, userName, userPassword);
                Statement stat = conn.createStatement();   
                String query = userQuery;
                ResultSet result = stat.executeQuery(query);
                System.out.println("Result(s): ");
                  while (result.next ()){
                      int i = result.getInt("userId");
                      String name=result.getString("userName");
                      String password=result.getString("userPassword");
                          //System.out.println("test data:"+a);
                      if(a.equals(name.equals("userName"))&& b.equals(password.equals("userPassword"))){
                                System.out.println("User is Valid");
                            else{
                                System.out.println("You are not a Valid User");
                                System.out.println("test data:"+name);
                                System.out.println("test data:"+password);
                                System.out.println("test data:"+a);
                                System.out.println("test data:"+b);
                      //conn.close();
                   // }catch(Exception e){
                    //System.out.println("Exception is ;"+e);
                    //System.out.println("Exception is ;");
    //                if(a.equals(name.("userName"))
    //                    && password.equals(password.equals("userPassword"))){
    //                    System.out.println("User is Valid");
    //                else{
    //                    System.out.println("You are not a Valid User");
    } WithAuthTest.java
    package com.Auth;
    public class WithAuthTest extends WithAuthMet{
        public static void main(String[] args) throws Exception{
            WithAuthMet CTD = new WithAuthMet();   
            String a = "dan";
            String b = "password";
            //CTD.connect(String name,String password);
            CTD.connect(a, b);
            //return connect;
    }please help.

    yakultyakultyakult wrote:
    WithAuthMet.java
    - this is where the error is and where I messed up.
    package com.Auth;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.Statement;
    public class WithAuthMet extends WithAuth {
    public void connect(String a, String b)throws Exception{       
    //try {
    Class.forName ("com.mysql.jdbc.Driver").newInstance ();               
    Connection conn = DriverManager.getConnection (databaseUrl, userName, userPassword);
    Statement stat = conn.createStatement();   
    String query = userQuery;
    ResultSet result = stat.executeQuery(query);
    System.out.println("Result(s): ");
    while (result.next ()){
    int i = result.getInt("userId");
    String name=result.getString("userName");
    String password=result.getString("userPassword");
    //System.out.println("test data:"+a);
    if(a.equals(name.equals("userName"))&& b.equals(password.equals("userPassword"))){
    System.out.println("User is Valid");
    else{
    System.out.println("You are not a Valid User");
    System.out.println("test data:"+name);
    System.out.println("test data:"+password);
    System.out.println("test data:"+a);
    System.out.println("test data:"+b);
    //conn.close();
    // }catch(Exception e){
    //System.out.println("Exception is ;"+e);
    //System.out.println("Exception is ;");
    //                if(a.equals(name.("userName"))
    //                    && password.equals(password.equals("userPassword"))){
    //                    System.out.println("User is Valid");
    //                else{
    //                    System.out.println("You are not a Valid User");
    This is one line that is wrong
                       if(a.equals(name.equals("userName"))&& b.equals(password.equals("userPassword"))){You have 'a' and 'b which are Strings
    and you are comparing them [using equals()] with the boolean return from another set of equals() invocations.
    String equals boolean will always be false (well, maybe not if the String is "TRUE" or "FALSE" - and you would need some more boilerplate to make that work).

  • Help regarding MBeanServerConnection queryName function

    Hi guys, i recently start using JMX and i need some help regarding queryName function. I want to get a specific set of objectNames, not all of them.
    I have the following List of Beans
    ObjectName = WowzaMediaServerPro:loadBalancer=LoadBalancer,loadBalancerServers=LoadBalancerServers,serverId=14b69d-eee40f3d6467,name=LoadBalancerServer
    ObjectName = WowzaMediaServerPro:loadBalancer=LoadBalancer,loadBalancerServers=LoadBalancerServers,serverId=40-a0b2-f1dfb314406f,name=LoadBalancerServer
    ObjectName = WowzaMediaServerPro:loadBalancer=LoadBalancer,loadBalancerServers=LoadBalancerServers,serverId=98-4af4-9147-bf45fb49c044,name=LoadBalancerServer
    ObjectName = WowzaMediaServerPro:loadBalancer=LoadBalancer,loadBalancerServers=LoadBalancerServers,serverId=c-4bf6-9c42-d5c3acea6662,name=LoadBalancerServer
    ObjectName = WowzaMediaServerPro:loadBalancer=LoadBalancer,name=LoadBalancerListener
    ObjectName = WowzaMediaServerPro:loadBalancer=LoadBalancer,name=LoadBalancerRedirector
    ObjectName = WowzaMediaServerPro:mediaCache=MediaCache,name=IOPerformance
    ObjectName = WowzaMediaServerPro:mediaCache=MediaCache,name=MediaCache
    ObjectName = WowzaMediaServerPro:mediaCache=MediaCache,name=PendingReadAheadRequestTracker
    ObjectName = WowzaMediaServerPro:mediaCache=MediaCache,name=PendingWriteRequestTracker
    ObjectName = WowzaMediaServerPro:name=Connections
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,name=Connections
    ObjectName = WowzaMediaServerPro:name=HandlerThreadPool
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,name=HandlerThreadPool
    ObjectName = WowzaMediaServerPro:name=IOPerformance
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,name=IOPerformance
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,name=IOScheduler
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=chat,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=default,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=file,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=live,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=live-lowlatency,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=live-record,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=live-record-lowlatency,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=liverepeater-buffer,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=liverepeater-edge,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=liverepeater-edge-lowlatency,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=liverepeater-edge-origin,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=liverepeater-origin,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=netconnection,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=record,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=rtp-buffer,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=rtp-buffer-lowlatency,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=rtp-buffer-record,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=rtp-buffer-record-lowlatency,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=rtp-live,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=rtp-live-lowlatency,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=rtp-live-record,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=rtp-live-record-lowlatency,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=rtpout,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=shoutcast,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=shoutcast-buffer,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=shoutcast-buffer-record,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,streamTypes=StreamTypes,streamTypeName=shoutcast-record,name=Properties
    ObjectName = WowzaMediaServerPro:vHosts=VHosts,vHostName=_defaultVHost_,name=Properties
    ObjectName = WowzaMediaServerPro:name=Server
    ObjectName = WowzaMediaServerPro:name=ServerNotifications
    My question is that , how can i get those rows that contains "WowzaMediaServerPro:loadBalancer=LoadBalancer,loadBalancerServers=LoadBalancerServers"?
    Please help

    Hello ,
    There should be a number of BRF+ tutorials available in SCN which discuss the FDT APIs. You can have a look at them to get an idea of the various APIs available and their uses.
    For your usecase, you should do the following.
            lo_fdt_function         TYPE REF TO if_fdt_function,
            lo_fdt_result           TYPE REF TO if_fdt_result,
    * Get function handle
          CALL METHOD lo_fdt_factory->get_function
            EXPORTING
              iv_id       = lv_function_id
            RECEIVING
              ro_function = lo_fdt_function.
    where lv_function_id is the GUID of the BRF+ function . You can either make it a constant , or you can use a FDT API to get the function GUID from the BRF+ application name and function name.
    *   Set function context
        TRY.
            CALL METHOD lo_fdt_context->set_value
              EXPORTING
                iv_id    =
                ia_value =
    This is one way to set the input context ( pass the input to the BRF+ function to process ). There are other ways to do this as well. Which one you use would depend on the kind of input you want to pass.
    * Execute BRFPLUS function
      TRY.
          CALL METHOD lo_fdt_function->process
            EXPORTING
              io_context = lo_fdt_context
            IMPORTING
              eo_result  = lo_fdt_result.
    * Get result output
      TRY.
          CALL METHOD lo_fdt_result->get_value
            IMPORTING
              ea_value =
    Another direct way of doing it would be to use the method PROCESS of the class CL_FDT_FUNCTION_PROCESS.
    I have not gone into much explaination here , but it should provide you an idea of how you can go about it.Read the SCN docs on the APIs to get a better idea , or better still if you can get hold of a copy of the BRF+ book by Carsten Ziegler , you will get an end to end explaination of all BRF+ APIs in it.
    Regards,
    Indranil.

  • Need help regarding Java decoding of IMAP attachment (IOStream related ques

    Hi ,
    I need some help regarding the processing of an IMAP attachment , It is a basic IOStream related question I guess.
    I have some attachment to a mail , I try to fetch it using javamail and read the content and write it to a file , I was able to do it successfully when I was using stream.read( tempBuffer) function but when I started using stream.read( tempBuffer, 0, m_maxDataSize ); it is giving me following exception
    java.io.IOException: Error in encoded stream: needed at least 2 valid base64 characters, but only got 1 before padding character (=), the 10 most recent characters were: "/59PT/eXQ="
         at com.sun.mail.util.BASE64DecoderStream.decode(BASE64DecoderStream.java:259)
         at com.sun.mail.util.BASE64DecoderStream.read(BASE64DecoderStream.java:148)
    ***Here is the snippet of code that is running this:***
    m_contentObj = m_message.getContent();
    if(m_contentObj instanceof InputStream)
         System.out.println(" Content is type of InputStream");
         InputStream stream = (InputStream) m_contentObj;
         byte[] tempBuffer = new byte[m_maxDataSize];
         stream.skip( m_currPos );
         int bytesRead=stream.read( tempBuffer, 0, m_maxDataSize );
         System.out.println(" Read the following no of bytes from the Object::"+bytesRead);
         m_currPos+=     bytesRead;
    Please suggest what to do.
    Thanks & Regards
    Saurabh

    BUMP, just incase its been missed by a new board member

  • Help with Hasvalue Function in 2008

    Dear all,
    I have a question regarding "Hasvalue" function under Crystal Reports 2008. I have created a quite extensive report based on quite alot of parameters. These parameters need to be Optional i.e. if user does not enter a value then all the records according to date parameter should be chosen, however if any one parameter value has been entered then report should filter according to that parameter value as well as date parameter values.
    The report prints out results fine however it takes quite a lot of time to load. Example would be, yesterday when I ran the report Database query took 87238ms and reading records took 30691ms hence report formatting a first page took 981428ms.
    Upon research and help from Brian in this forum I found out that while using "Hasvalue" the even when I use parameter value in one of the parameters, only date parameters are getting passed through the SQL query to the database, rest are not passed meaning that it reads all the records and then sort them in the end.
    I have only one parameter which is not optional and that is date parameter, rest all are optional.
    My question is, how can I pass the parameter values when chosen through the SQL query so that it can search the db upon query and not read all the records and sort at last.
    Any ideas how to make it work?
    Many thanks
    Regards
    Jehanzeb

    On the report under Report>Record->Selection formula.
    Infact here is the formula
    {order_header.date_entered} >= {?Start Date} and
    {order_header.date_entered} <= {?End Date} and
    (not HasValue({?Account Number}) or {order_header.account_no} = {?Account Number})and
    (not HasValue({?Product Group}) or {order_lines.stock_code}[1 to 5] = {?Product Group})and
    (not HasValue({?Sales Area}) or {slslsp.slr_slsperson} in {?Sales Area});
    All the Hasvalue are not being passed on through SQL, as you can see below I have chosen a customer account number but it does not reflect in the query, however the results are according to customer account.
    SELECT DISTINCT order_header.order_no, order_header.order_status, order_header.date_entered,
    ndmas.ndm_name, order_header.account_no, order_progress.order_status, order_lines.stock_code,
    slslsp.slr_slsperson, slslsp.slr_slspname, order_progress.date_created
    FROM   maxmast.ndmas ndmas, maxmast.order_header order_header, maxmast.order_lines order_lines,
    maxmast.order_progress order_progress, maxmast.slcust slcust, maxmast.slslsp slslsp
    WHERE  (order_header.order_no=order_lines.order_no) AND
    ((order_header.order_no=order_progress.order_no) AND (order_header.repeat_no=order_progress.repeat_no))
    AND (order_header.account_no=slcust.slm_custcode) AND (ndmas.ndm_ndcode=slcust.slm_custcode) AND
    (slcust.slm_slsperson=slslsp.slr_slsperson) AND (order_header.date_entered>={ts '2008-10-01 00:00:00'}
    AND order_header.date_entered<={ts '2008-10-05 00:00:00'})
    Regards
    Jehanzeb

  • Questions regarding update function module

    Hello experts,
    I am on customer site to help them investigate one issue: they have a background job which runs periodically.
    In the report database table A is changed firstly ( new entries are inserted ), then a update function module is called via keyword CALL FUNCTION ... IN UPDATE TASK.
    Inside the function module database table B is updated. ( existing entries are updated )
    Customer issue:
    sometimes they find A is updated as expected, however B remains unchanged at the same time.
    customer could not find exact steps to reproduce the issue. However the issue does exist there and occur from time to time.
    the issue could only be reproduced in their production system, but works perfectly well in dev & Q system. It is difficult to debug in their production system for trouble shooting.
    After analyzing related code, I have one doubt: according to ABAP help on CALL FUNCTION aaa IN UPDATE TASK, I know the function module aaa is called in a new update work process. I wonder whether there is any possibility there this issue might be caused because the update function module fails to get called at all? ( perhaps due to heavy system load so no free update function module could serve the table B update ? )
    If update function module fails to execute, is there any system utility to record this? That is to say, will it be recorded in such as SM13 or SM21?
    Looking forward to your expertise on this topic!
    Best regards,
    Jerry

    Hello friends,
    Thanks a lot for your interests on this issue. I update all my findings:
    1. issue background: this issue occurs in SAP CRM Channel manageement Solution, software component CRM-CHM-POS.
    2. due to some limitations, the table CMSD_CI_HISTORY and history table are not updated in the same LUW. Instead the first one is updated in normal work process while the other is done in update work process. Since I am not the original developer I didn't know the whole complex scenario ( I did see this is done delibrately in note 1764006 - CMS:Sell In Release creating PB with zero available quantity ).
    So for the moment we have to accept this design.
    3. during our testing ,we ensure COMMIT WORK is always called.
    4. So why sometimes the first table update fails, however there is no hint at all for this failure in the system like ST22 and SM21 ?? ( forget SM13, since it is updated in normal work process ).
    The root cause is the flaw of SAP code below.
    The code has planned to raise exception if insertion failed due to duplicate records to be inserted.
    Unfortunately, the fact is if we use "INSERT db FROM TABLE xxx" to insert records into database and some record already exists with the same key, it will result in a termination but SY-SUBRC is STILL 0; Just compare it with single insertion using "INSERT db FROM <work area>", in the same error situation, processing does not terminate, and SY-SUBRC is set to 4.
    As a result in this case even the insertion fails, line 29 will never be executed as sy-subrc is always 0. Since the insertion fails and the exception is caught without any notification, so customer sufferred because they do not know what has happened.
    Best regards,
    Jerry

  • Regarding CALL FUNCTION 'CLAF_CLASSIFICATION_OF_OBJECTS'

    Hi Friends,
    I want to know, Can this module update the Class information?
    I can retrive class information using this function module, but i am not able to update the class information.
    If all of you know any other way to update class information. Please let me Know.
    Thanks
    Amit

    Hi Amit,
    I know about these .
    CLAF_CLASSIFICATION_OF_OBJECTS - reads all classifications for an object
    BAPI_OBJCL_GETDETAIL - returns detailed information on a classification
    BAPI_OBJCL_CHANGE - changes an existing classification, or creates the classification if it does not yet exist.
    This one can be checked but if there are some more inputs on this, it would be helpful.
    regards
    Nishant Malhotra

  • Need help regarding the dunning form

    Hi,
    I have to display all the sales and payments of a cusomter for all the periods that are older than the run date in a dunning form. (i.e) if the run date is 04-aug-05 and if the slaes are there in 3 months(april, May, july) then i have to display three line items with sales and payments for that corresponding three months in the line items. As this is a dunning form i cannot change the print program. any table which have all the sales for a period which i can access directly in the script. can anyone suggest how to handle this.
    regards,
    Asha

    Hi,
    You can call a subroutine within a program (your z program)
    /:   PERFORM ADD_AMOUNT IN PROGRAM SAPLZFTP_F150
    /:           USING &W_AMOUNT&
    /:   ENDPERFORM
    In the z program create this subroutine.
          Form ADD_AMOUNT
         -->FT_INVAR  Text Symbol table for input  variables
         -->FT_OUTVAR Text Symbol table for output variables
    FORM add_amount TABLES ft_invar   STRUCTURE itcsy
                           ft_outvar  STRUCTURE itcsy.
      STATICS:
        w_value_l    TYPE  f150d-salfw.
            READ TABLE ft_invar INDEX 1.
            IF sy-subrc IS INITIAL.
    you can check all this part of the code how you want to
    process your data whether its numeric or character or
    whatever
               w_value_l = w_value_l + ft_invar-value.
            ENDIF. "IF sy-subrc IS INITIAL.
    ENDFORM.                    " ADD_AMOUNT
    TO BESPOKE THE PRINT PROGRAM FOR THE DUNNING
    Dunning outputs use the function module FI_DUNNING_PRINT_NOTICE. You can copy this to a Z function module and make some changes to the data selection. You will have to look into the code and decide what changes you need.
    The process to use a bespoke program to do the dunning print is as follows:
    UNDER FI GLOBAL SETTINGS in the configuration,
    There are Business Transaction Events. Within that you can configure the same to enable a Z function module in place of the standard function module (from the FUNCTION GROUP F150)
    • Create function group ZFTP_F150
    • Copy standard function module FI_PRINT_DUNNING_NOTICE of function group F150 to ZFTP_FI_PRINT_DUNNING_NOTICE in function group ZFTP_F150
    • Copy standard function module PRINT_DUNNING_NOTICE of function group F150 to ZFTP_PRINT_DUNNING_NOTICE in function group ZFTP_F150
    • Within the function module ZFTP_FI_PRINT_DUNNING_NOTICE, change function module call for PRINT_DUNNING_NOTICE to ZFTP_PRINT_DUNNING_NOTICE
    • Create a new include ZFTPI_ROUTINES within the function group and copy the subroutines LOG_MSG, LOG_MSG_TAB, & LOG_SYMSG from the function group F150 to this include
    AS AN ALTERNATE, YOU CAN COPY THE WHOLE FUNCTION GROUP
    • Maintenance view TBE31 (SM30). Change the function module from FI_PRINT_DUNNING_NOTICE to ZFTP_FI_PRINT_DUNNING_NOTICE against the event 00001720 FI-FI entry
    Hope this helps.
    regards,
    Satya

  • Help regarding data element

    I need some help regarding data element ZEXPDT.  I used it in an infoquery that was transported to QAS and it does not exist in QAS.  I thought it might be locked in a transport, but the below screen clip says it is not locked.  It was created in 3/2014.  Thanks.

    Either trick the system, SE11, add a space at end of text desciption and save,
    Or call transport workbench (SE01, SE10) create a transport request or use an existing one, then double-click on a task, switch to modify mode, add a line with R3TR DTEL name of the data element, save, then object list, lock in request/task menu.
    Or SE80, contextual menu of data element. (other functions, write transport entry)
    Regards,
    Raymond

  • Help Regarding Emoticons....('',)    ??

    Hello to all experts,
    I need some help regarding my Chat program...
    Can anybody should tell me how to access Emoticons images from a particular destination or source using a java code....
    Or Is there any way to access that emoticons using XML file...so that it will then read from a Java code....??
    XML file look like as :-
    <root>
    <img1>path of the image or emoticon</img1>
    <img2>.........................     ........................</img2>
    </root>By using above file i will read emoticons using Java code....??
    Is there any function , Method or a sample code to do that job...
    Thanks in Advance.....

    Thanks DrClap....
    One More thing I want to knw from you.....
    Actually Other then this Emoticons help....
    I had given a post in Java Help System for getting help regarding How to open a HelpSet file from a java code By just putting JH.Jar in my Lib path.
    I am using the following program to do so...
    public class JavaHelpDemo extends JFrame
    private HelpBroker someHelpBroker;
    public JavaHelpDemo()
    HelpSet hs;
    try
            File f = new File("Master.hs");
            URL url = f.toURL();
            hs = new HelpSet (null, url);
            HelpBroker hb = hs.createHelpBroker();
            new CSH.DisplayHelpFromSource(hb);
            hb.setDisplayed(true);
          catch (Exception a)
            System.out.println("Error is here");
            System.out.print(a);
    // constructor
    public static void main(String[] args)
    JavaHelpDemo javaHelpDemo1 = new JavaHelpDemo();
    }//classActually my this program is running well and I m getting my helpset only when i insert all my files with htmls in my source path.....
    I hav created a Jar or all these files and named it Help.jar
    is there any way just to call that helpset using this jar without giving all files into source path.....
    Regards,
    Daman.

  • Two Bugsreports regarding messages function

    Hello!
    I would like to take this opportunity to present 2 bugs(?) related to text messaging with the latest version of iOS4
    Bug #1:
    When you go into a text message conversation and pull the finger down you get a "bump" as the phone tries to scroll down but are all the way down. During this "bump" you press the text field, making the keyboard appear. Now the keyboard occupy half of the messages displayed untill you go back and into the messages again.
    Repeatable every time.
    Bug #2: Sometimes when you are in a text message conversation and press the "message" button (back). The list is scrolled up to the start of the conversation instead of going back out in the message screen.
    This happens alot to me when you go in and press back (Messages) within 1-2seconds.
    Not reproducible every time, but often enough.
    Please contact me if you need more information.

    Hi,
    For capturing messages in BAPi,
    after calling the BAPI function module,
    in its return parameter the function
    module return one internal table having
    all the success and error messages.
    data: it_RETURN like BAPIRET2 occurs 0.
    Hope it helps
    Regards
    Mansi

Maybe you are looking for