Reading data which was wrote using fm BAL_LOG_MSG_ADD

I have two queries:
1) My z program is writing logs Using fn modules
BAL_LOG_CREATE
and
BAL_LOG_MSG_ADD
<b>Where can I view the log. Which tcode?</b>
I have seen <b>SM21</b> but there is no entry for my transaction.
2) What is the suitable way of writing log to SAP. My program is Posting goods movements with the help of fn module BAPI_GOODSMVT_CREATE.
Code realted to point 1.
  PERFORM activate_message_header.
  PERFORM msg_add USING lw_bapireturn-type
                       lw_bapireturn-id
                       lw_bapireturn-number
                       lw_bapireturn-message_v1 lw_bapireturn-MESSAGE+0(15)
                       lw_bapireturn-message_v2 lw_bapireturn-MESSAGE+14(15)
                       lw_bapireturn-message_v3 lw_bapireturn-MESSAGE+29(15)
                       lw_bapireturn-message_v4 lw_bapireturn-MESSAGE+44(15).
FORM activate_message_header .
  DATA: l_s_log    TYPE bal_s_log.
* define some header data of this log
  l_s_log-aluser    = sy-uname.
  l_s_log-altcode   = sy-tcode.
* create a log
  CALL FUNCTION 'BAL_LOG_CREATE'
    EXPORTING
      i_s_log                 = l_s_log
    IMPORTING
      e_log_handle            = w_handle_1
    EXCEPTIONS
      log_header_inconsistent = 1
      OTHERS                  = 2.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
ENDFORM.
FORM msg_add  USING   p_msgty TYPE syst-msgty
                            p_msgid TYPE syst-msgid
                            p_msgno TYPE syst-msgno
                            p_msgv1 TYPE syst-msgv1 p_msgv1_SRC TYPE BALMSGVSRC
                            p_msgv2 TYPE syst-msgv2 p_msgv2_SRC TYPE BALMSGVSRC
                            p_msgv3 TYPE syst-msgv3 p_msgv3_SRC TYPE BALMSGVSRC
                            p_msgv4 TYPE syst-msgv4 p_msgv4_SRC TYPE BALMSGVSRC
  DATA: l_s_msg TYPE bal_s_msg.
* define data of message for Application Log
  l_s_msg-msgty     = p_msgty.
  l_s_msg-msgid     = p_msgid.
  l_s_msg-msgno     = p_msgno.
  l_s_msg-msgv1     = p_msgv1. l_s_msg-MSGV1_SRC = p_msgv1_src.
  l_s_msg-msgv2     = p_msgv2. l_s_msg-MSGV2_SRC = p_msgv2_src.
  l_s_msg-msgv3     = p_msgv3. l_s_msg-MSGV3_SRC = p_msgv3_src.
  l_s_msg-msgv4     = p_msgv4. l_s_msg-MSGV4_SRC = p_msgv4_src.
* add this message to log file
* we do not specify I_LOG_HANDLE since we want to add this message
* to the default log. If it does not exist we do not care
* (EXCEPTIONS log_not_found = 0).
  CALL FUNCTION 'BAL_LOG_MSG_ADD'
    EXPORTING
      i_s_msg      = l_s_msg
      i_log_handle = w_handle_1
    EXCEPTIONS
        log_not_found = 0
        OTHERS        = 1.
ENDFORM.

Q 1. Where can I view the log. Which tcode?
SLG1
Q 2. (To best of my knowledge, which is very limited First we need to create a Z log object and subobject (transaction SLG0).  Save it using fn BAL_DB_SAVE

Similar Messages

  • I lost my Iphone 3GS. My brother has given me his Iphone 4 now. We both use the same notebook to update and sync our phones. I would like to know how can i reconnect back to my account using the Iphone which was previous used by my brother.

    I lost my Iphone 3GS. My brother has given me his Iphone 4 now. We both use the same notebook to update and sync our phones. I would like to know how can i reconnect back to my account using the Iphone which was previous used by my brother.

    If you are saying that you both have iCloud accounts and use the same icloud ID, then yes, the contacts will be deleted.  The idea is that all devices using the same icloud ID are kept in sync.  You need to use different IDs.  You can keep the same iTunes ID so you can share the songs and apps.  But use different icloud IDs.

  • "Command-i" which was so useful in being able to selectively delete messages from the servers no longer works. Is their a replacement? Will it be fixed? Or should I change my mail application?

    "Command-i" which was so useful for selectively deleting messages from servers has disappeared in  Maverick. I wonder if it has been replaced by something else or should I look into other mail applications.

    Hmmm.  Which Mail program are you referring to?
    in Mac Mail command -i used to bring up the Account info pane on the server  (10.8.5)
    Now it seems you have to use the gear at the bottom in "Mail Activity" to get the drop down (10.9) :

  • Accessing a File within a zip, which was archived using Applet Tag

    Hi,
    Could Any one please tell me, How to Access a File from within an Applet. The File resides inside a zip which was Archived using <Applet> Tag.
    Actually, I want to write an application which runs both online and offline. So I have chosen Applet and All the files Which I need are zipped and is Archived through <Applet ARCHIVE="example.zip">.
    Now I want to access those XML files which are inside example.zip from my Applet.
    How can I do that?
    I think I will get security Exception.
    How to get rid of this security Exception.
    Kindly Answer soon.......
    It's very urgent.
    Thanking you,
    KumudaRaj

    Did you already try signing a jarfile? If no ->>
    You can call a class inside a jar-file within the applet.
    if this class should be able to acces files the jarfile
    first has to be signed. to do this, you must generate a key.
    the complete work:
    1. write your applet
    2. write a html-page with following code:
    <APPLET code="guestbook.class" archive="guestbook.jar" width=600 height=400></APPLET>
    3. make a zip-file with the guestbook.class, guestbook.form, guestbook$1.class, guestbook$... and rename it to guestbook.jar
    4. in the console type:
    keytool -genkey -alias YOURNAME
    5. sign the key to your jarfile with:
    jarsigner guestbook.jar YOURNAME
    6. try the applet. a warning should appear which you have to answer
    with YES then it should work
    my trouble is that i cant acces files anyway because right now i don�t
    alreadv have the clue to get the right (absolute?) path for the file. means i get an ioexception because the applet cant find the file :-((
    does anyone know how to solve this problem then? my code is:
    FileReader Stream = new FileReader("/members/Ui97u8g4f6b89mj90kh5gbr4ecf6KXC4/guestbook.txt");
    ...

  • Error when reading data in to ArrayCollection using HTTPService

    Hi,
    I am trying to read data in to ArrayCollection using HTTPService result property:
    [Bindable] private var myData:ArrayCollection=new ArrayCollection();
       private function result_handler(e:ResultEvent):void
            myData = e.result.root.contact;
      <mx:HTTPService id="post_submit"
           url="test.php"
           method="POST"
           result="result_handler(event)"
           fault="fault_handler(event)">
           <mx:request xmlns="">
           </mx:request>
       </mx:HTTPService>
    I am getting the following error when there is no "contact" record in the xml root:
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
    Also I am getting the following error when there is only ONE  "contact" record in the xml root:
    TypeError: Error #1034: Type Coercion failed: cannot convert mx.utils::ObjectProxy@280c9ca1 to mx.collections.ArrayCollection.
    And it works fine when there is two or more "contact" records in the xml root.
    Am I missing something?
    Thanks

    I am getting the following error when there is no "contact" record in the xml root:
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
         You'll be getting this error because it's trying to access nodes that don't exist;
         there are no 'contact' records, thus when it tries to access node 'root.contact', it doesn't exist, hence it's receiving NULL when it's expecting      something
    Also I am getting the following error when there is only ONE  "contact" record in the xml root:TypeError: Error #1034: Type Coercion failed: cannot convert mx.utils::ObjectProxy@280c9ca1 to mx.collections.ArrayCollection.
    And it works fine when there is two or more "contact" records in the xml root.
    Am I missing something?
    Thanks
          When there is only 1 value, it'll be returned as an object (Arrays are used for multiple items). So it throws an error as it isn't expecting a single           object, it wants an Array.
         This is also why when it returns 2+ records, there is no error. Multiple results will be returned as an Array, what your flex app was expecting.
         My initial guess to solve the first problem would be similar to Greg's, although i'm guessing you'd want;
        if(e.result != null){
         instead of
         if(e.result.root.contact != null){
        as you'd initially want to check if anything was returned in the result, rather than checking to see if a certain node exists.
         If you attempt to see if a certain node isn't null, and the node doesn't exist, it'll probably throw another #1009
         For the #1034 error, you'll have to check to see how many results were returned, as Madhav has described for you.

  • How to read data which is coming to IP

    Hi,
    I'm building an application that needs to read data which is coming from GPRS modem and reply to the same after some action.
    Through Mobile GPRS i'm sending data to our website IP. Here i need to receive that data. How can i do this..?
    Please any one help..

    YogishGS wrote:
    Through Mobile GPRS i'm sending data to our website IP. Here i need to receive that data. How can i do this..?Seems like a basic networking question.
    [java socket tutorial|http://java.sun.com/docs/books/tutorial/networking/sockets/]

  • Ora-26040 : data block was loaded using the NOLOGGING option

    i have restored full back up database using RMAN sucessfully from one server to another .Restoration process do not contain any error.
    New Database contain job when it executes then it leaves mesaage in alert log.
    "ORA-01578 oracle data block corrupted file # 6 block # 6888812"
    "ORA-26040 data block was loaded using nologging option".
    please let me know how it could recovered and prevented.
    regards
    prabhat

    In short, your full backup has happened when a NOLOGGING transaction was on flight. Hence the recovery process should get the transaction's data out of archive logs. BUT the data doesn't exist in archivelog beause the transaction was NOLOGGING. For comprehensive detail read the documents above.
    To prevent this situation, backup the database when no NOLOGGING transaction is running.

  • I have recently updated m iPhone 4 which was not used since months. It has to be updated from5.1.4 to iOS 7.0.4 and it has taken more than 15 hours to get started. Plz help me. It took about 5 to 6 hrs to prepare for updating.

    I have recently updated m iPhone 4 which was not used since months. It has to be updated from5.1.4 to iOS 7.0.4 and it has taken more than 15 hours to get started. Plz help me. It took about 5 to 6 hrs to prepare for updating.

    I am having this problem.  At first with the new iPhone 5, and then with the iPad 2.  I am not sure why this is happening. 
    My gut feeling is this is an iO6 issue and here's why -
    The problem mainly occurs with apps.  I have about 150 apps, and when I plugged in the phone, iTunes went to sync all of them.  The process would hang up after about 20 - 30 apps were loaded onto the phone. I could tell where about the process hung up because the apps on the phone showed up as "waiting".
    Then on the iPad 2 I plugged in to sync and saw there was a huge "Other" component in my storage.  It required me to restore the iPad 2 from backup.  With this restore the same issues occurred - putting the apps back on the iPad would hang up.  The videos on the iPad also got stuck - maybe after about 10 hours of videos transfered iTunes crashed.
    My solution has been to soft reset the device, restart Windows, and continue the process until it's complete.  This is remarkably inefficient and time-intensive but everything works with patience.
    I have been wondering if others have had these same problems. 

  • Have family plan with 250 data which I almost use each month.  Going on vacation and will be on the road for two weeks.  Should I up my data for a month then change back.  Is it worth it or should I just run over and pay the extra 15 per gig?

    have family plan with 250 data which I almost use each month.  Going on vacation and will be on the road for two weeks.  Should I up my data for a month then change back.  Is it worth it or should I just run over and pay the extra 15 per gig?

    Hello mlazaretti. Vacation time is awesome. (Especially a road trip!) Since you will be going out for two weeks, you never know if having extra data may come in handy. I highly recommend switching to the next tier up so this way you have more data. This way it is only $10.00 more versus $15.00, and you dont have to worry about overages. Then change back at the start of the next billing cycle.
    If you need help making this change let us know! Have a safe trip!
    NicandroN_VZW
    Follow us on twitter @VZWSupport

  • Read data from ODS table using value mapping

    hi all;
    can anyone help on how to read data from ODS table using value mapping

    Mudit,
    Take a look at this blog,
    <a href="/people/siva.maranani/blog/2005/08/23/lookup146s-in-xi-made-simpler">DB Lookup in Mapping</a>
    Regards,
    Bhavesh

  • Reading data from flat file Using TEXT_IO

    Dear Gurus
    I already posted this question but this time i need some other changes .....Sorry for that ..
    I am using 10G forms and using TEXT_IO for reading data from flat file ..
    My data is like this :-
    0|BP-V1|20100928|01|1|2430962.89|27|2430962.89|MUR|20100928120106
    9|2430962.89|000111111111|
    1|61304.88|000014104113|
    1|41961.73|000022096086|
    1|38475.65|000023640081|
    1|49749.34|000032133154|
    1|35572.46|000033093377|
    1|246671.01|000042148111|
    Here each column is separated by | . I want to read all the columns and want to do some validation .
    How can i do ?
    Initially my requirement was to read only 2 or 3 columns so i did like this ...
    Procedure Pay_Simulator(lfile_type varchar2,lac_no varchar2,lcur varchar2,lno_item number,ltotal number,ldate date,lpay_purp varchar2,lfile_name varchar2)
    IS
    v_handle utl_file.file_type;
    v_filebuffer varchar2(500);
    line_0_date VARCHAR2 (10);
    line_0_Purp VARCHAR2 (10);
    line_0_count Number;
    line_0_sum number(12,2);
    line_0_ccy Varchar2(3);
    line_9_sum Number(12,2);
    line_9_Acc_no Varchar2(12);
    Line_1_Sum Number(12,2);
    Line_1_tot Number(15,2) := 0;
    Line_1_flag Number := 0;
    lval number;
    lacno varchar2(16);
    v_file varchar2(20);
    v_path varchar2(50);
    Begin
    v_file := mcb_simulator_pkg.GET_FILENAME(lfile_name); -- For the file name
    v_path :=rtrim(regexp_substr( lfile_name , '.*\\' ),'\'); For the Path
    v_path := SUBSTR (lfile_name,0, INSTR (lfile_name, '\', -1));
    v_handle := UTL_FILE.fopen (v_path, v_file, 'r');
    LOOP
    UTL_FILE.get_line (v_handle, v_filebuffer);
    IF SUBSTR (v_filebuffer, 0, 1) = '0' THEN
    SELECT line_0 INTO line_0_date
    FROM (SELECT LTRIM (REGEXP_SUBSTR (v_filebuffer, '[^|]+{1}', 1, LEVEL)) line_0, ROWNUM rn
    FROM DUAL
    CONNECT BY LEVEL <= LENGTH (REGEXP_REPLACE (v_filebuffer, '[^|]*')) + 1)
    WHERE rn = 3;
    SELECT line_0 INTO line_0_Purp
    FROM (SELECT LTRIM (REGEXP_SUBSTR (v_filebuffer, '[^|]+{1}', 1, LEVEL)) line_0, ROWNUM rn
    FROM DUAL
    CONNECT BY LEVEL <= LENGTH (REGEXP_REPLACE (v_filebuffer, '[^|]*')) + 1)
    WHERE rn = 4;
    SELECT line_0 INTO line_0_count
    FROM (SELECT LTRIM (REGEXP_SUBSTR (v_filebuffer, '[^|]+{1}', 1, LEVEL)) line_0, ROWNUM rn
    FROM DUAL
    CONNECT BY LEVEL <= LENGTH (REGEXP_REPLACE (v_filebuffer, '[^|]*')) + 1)
    WHERE rn = 7;
    SELECT line_0 INTO line_0_sum
    FROM (SELECT LTRIM (REGEXP_SUBSTR (v_filebuffer, '[^|]+{1}', 1, LEVEL)) line_0, ROWNUM rn
    FROM DUAL
    CONNECT BY LEVEL <= LENGTH (REGEXP_REPLACE (v_filebuffer, '[^|]*')) + 1)
    WHERE rn = 8;
    SELECT line_0 INTO line_0_ccy
    FROM (SELECT LTRIM (REGEXP_SUBSTR (v_filebuffer, '[^|]+{1}', 1, LEVEL)) line_0, ROWNUM rn
    FROM DUAL
    CONNECT BY LEVEL <= LENGTH (REGEXP_REPLACE (v_filebuffer, '[^|]*')) + 1)
    WHERE rn = 9;
    ELSIF SUBSTR (v_filebuffer, 0, 1) = '9' THEN
    SELECT line_9 INTO line_9_Acc_no
    FROM (SELECT LTRIM (REGEXP_SUBSTR (v_filebuffer, '[^|]+{1}', 1, LEVEL)) line_9, ROWNUM rn
    FROM DUAL
    CONNECT BY LEVEL <= LENGTH (REGEXP_REPLACE (v_filebuffer, '[^|]*')) + 1)
    WHERE rn = 3;
    SELECT line_9 INTO line_9_sum
    FROM (SELECT LTRIM (REGEXP_SUBSTR (v_filebuffer, '[^|]+{1}', 1, LEVEL)) line_9, ROWNUM rn
    FROM DUAL
    CONNECT BY LEVEL <= LENGTH (REGEXP_REPLACE (v_filebuffer, '[^|]*')) + 1)
    WHERE rn = 2;
    ELSIF SUBSTR (v_filebuffer, 0, 1) = '1' THEN
    line_1_flag := line_1_flag+1;
    SELECT line_1 INTO line_1_sum
    FROM (SELECT LTRIM (REGEXP_SUBSTR (v_filebuffer, '[^|]+{1}', 1, LEVEL)) line_1, ROWNUM rn
    FROM DUAL
    CONNECT BY LEVEL <= LENGTH (REGEXP_REPLACE (v_filebuffer, '[^|]*')) + 1)
    WHERE rn = 3;
    Line_1_tot := Line_1_tot + line_1_sum;
    END IF;
    END LOOP;
    DBMS_OUTPUT.put_line (Line_1_tot);
    DBMS_OUTPUT.PUT_LINE (Line_1_flag);
    UTL_FILE.fclose (v_handle);
    END;
    But now how can i do ? Shall i use like this select Statement for all the columns ?

    Sorry for that ..
    As per our requirement ...
    I need to read the flat file and it looks like like this .
    *0|BP-V1|20100928|01|1|2430962.89|9|2430962.89|MUR|20100928120106*
    *9|2430962.89|000111111111|*
    *1|61304.88|000014104113|*
    *1|41961.73|000022096086|*
    *1|38475.65|000023640081|*
    *1|49749.34|000032133154|*
    *1|35572.46|000033093377|*
    *1|246671.01|000042148111|*
    *1|120737.25|000053101979|*
    *1|151898.79|000082139768|*
    *1|84182.34|000082485593|*
    I have to check the file :-
    Validation are 1st line should start from 0 else it should raise an error and insert that error into one table .
    The for 2nd line also same thing ..it should start from 9 else it should raise an error and insert that error into one table .
    Then the 3rd line should start from 1 else it should raise an error and insert that error into one table .
    After that i have to do a validation like i will read the 1st line 2nd column .. It should be like this BP-V1 else raise an error and insert that error to a table . Then i will check the 3rd column which is 20100928 , it should be YYYYMMDD format else same thing ERROR.
    Then like this for all columns i have different validation .......
    Then it will check for the 2nd line 3rd column . this is an account no .1st i will check it should be 12 char else ERROR .Then I will check that what user has imputed in the form.Like for example User putted 111111111 then i will check with this 000111111111 which is there in the 2nd line . I have to add 000 before that Account no which user imputed .
    Then the lines which is starting from 1 , i have to take all the 2nd column for all the lines which is starting from 1 and i have to do a sum . After that i have to compare that sum with the value in the 1st lines ( Starting from 0) 6th column . It should be same else ERROR ...
    Then same way i have to count all the lines which is starting from 1 . Then i have to compare with the 7th column of 1st line . It should be same . Here in this file it should be 9.
    MY CODE IS :-
    Procedure Pay_Simulator(lfile_type varchar2,lac_no varchar2,lcur varchar2,lno_item number,ltotal number,ldate date,lpay_purp varchar2,lfile_name varchar2)
    IS
    v_handle TEXT_IO.file_type;
    v_filebuffer varchar2(500);
    line_0_date VARCHAR2 (10);
    line_0_Purp VARCHAR2 (10);
    line_0_count Number;
    line_0_sum number(12,2);
    line_0_ccy Varchar2(3);
    line_9_sum Number(12,2);
    line_9_Acc_no Varchar2(12);
    Line_1_Sum Number(12,2);
    Line_1_tot Number(15,2) := 0;
    Line_1_flag Number := 0;
    lval number;
    lacno varchar2(16);
    v_file varchar2(20);
    v_path varchar2(50);
    LC$String VARCHAR2(50) ;--:= 'one|two|three|four|five|six|seven' ;
    LC$Token VARCHAR2(100) ;
    i PLS_INTEGER := 2 ;
    lfirst_char number;
    lvalue Varchar2(100) ;
    Begin
    v_file := mcb_simulator_pkg.GET_FILENAME(lfile_name); For the file name
    v_path :=rtrim(regexp_substr( lfile_name , '.*\\' ),'\'); For the Path
    --v_path := SUBSTR (lfile_name,0, INSTR (lfile_name, '\', -1));
    Message(lfile_name);
    v_handle := TEXT_IO.fopen(lfile_name, 'r');
              BEGIN
                        LOOP
                        TEXT_IO.get_line (v_handle, v_filebuffer);
                        lfirst_char := Substr(v_filebuffer,0,1);
                        --Message('First Char '||lfirst_char); 
                                  IF lfirst_char = '0' Then
                                  Loop
                                  LC$Token := mcb_simulator_pkg.Split( v_filebuffer, i , '|') ;
                                  Message('VAL - '||LC$Token);
                                  lvalue := LC$Token;
                                  EXIT WHEN LC$Token IS NULL ;
    i := i + 1 ;
    End Loop;
                                  Else
                                       Insert into MU_SIMULATOR_output_ERR (load_no,ERR_CODE,ERR_DESC) values (9999,'0002','First line should always start with 0');
                                       Forms_DDL('Commit');
                                       raise form_Trigger_failure;
                                  End if ;
                        TEXT_IO.get_line (v_handle, v_filebuffer);
                        lfirst_char := Substr(v_filebuffer,0,1);
                        LC$Token := mcb_simulator_pkg.Split( v_filebuffer, i , '|') ;
                        --Message('Row '||LC$Token);
                             IF lfirst_char = '9' Then
                                  Null;
                             Else
                                  Insert into MU_SIMULATOR_output_ERR (load_no,ERR_CODE,ERR_DESC) values (8888,'0016','Second line should start with 9');
                                  Forms_DDL('Commit');
                                  raise form_Trigger_failure;
                             End IF;
                        LOOP
                        TEXT_IO.get_line (v_handle, v_filebuffer);
                        lfirst_char := Substr(v_filebuffer,0,1);
                        LC$Token := mcb_simulator_pkg.Split( v_filebuffer, i , '|') ;
                        --Message('Row '||LC$Token);
                                  IF lfirst_char = '1' Then
                                  Null;
                                  Else
                                       Insert into MU_SIMULATOR_output_ERR (load_no,ERR_CODE,ERR_DESC) values (7777,'0022','The third line onward should start with 1');
                                       Forms_DDL('Commit');
                                       raise form_Trigger_failure;
                                  End if;
                        END LOOP;
                        --END IF;
                        END LOOP;
              EXCEPTION
                   When No_Data_Found Then
              TEXT_IO.fclose (v_handle);
              END;
    Exception
         When Others Then
         Message('Other error');
    END;
    I am calling the FUNCTION which you gave SPLIT as mcb_simulator_pkg.Split.

  • How to read data which is not on interface of user-exit

    Hi experts,
    the data which I need is not on interface of user-exit. I can do export table to memory id and than in user-exit import that. Does this work always?
    I have seen that sometimes is possible to see data with
    (include-name)table-name. Can I always use this?
    In detail: in transaction ME51N is new tabstrip created with customer fields.I have to know the purchase order for the selected item which is filled on another tabstrip.
    Can anyone help me?
    Thanks.
    Best regards,
    Danijela

    Hi Danijela,
    To answer your question about the "(module)object" approach:
    Have you been in a user exit function and the data you need wasn't passed on to you? You can easily grab the data from the memory stack using this little trick. Let's say that you need some IDoc information that was created from the function IDOC_INPUT_DELVRY... You can get it directly from the call stack like this.
    The code was written in R/3 4.6C but should work in any SAP version.
    DATA: i_EDIDC like EDIDC,
          i_EDIDD like EDIDD occurs 0 with header line.
    CONSTANTS:
          c_EDIDD(21)  value '(SAPLV55K)IDOC_DATA[]',
          c_EDIDC(21)  value '(SAPLV55K)IDOC_CONTRL',
          c_E1ADRM1(7)      value 'E1ADRM1'
          c_SHPCON(6)  value 'SHPCON'.
    Field-symbols: <FC>, <FD> .
    clear: i_EDIDC, i_EDIDD.
    refresh: i_EDIDD.
    * Get the Control Record from memory
    assign (c_EDIDC) to <FC>.
    if SY-SUBRC = 0.
      i_EDIDC = <FC>.
      IF i_EDIDC-MESTYP = c_SHPCON.
    *   None of the partner information can be passed directly from
    *   the IDOC function, so we'll get it from memory.
    *   Get IDOC data records from memory
        assign (c_EDIDD) to <FD>.
        i_EDIDD[] = <FD>.
    *   Now you have the entire IDOC available to you without making
    *   a DB select.
        read table i_EDIDD with key SEGNAM   = c_E1ADRM1.
    *   Load new value HERE...
      ENDIF.
    ENDIF.
    I found this a long time ago on the web and used it successfully multiple times in the past.
    Hope this helps,
    Guenther

  • Adding new column in an existing report which was build using Union

    While working in OBIEE 11g I encounter an issue.
    My existing report was build using UNION at Criteria Tab in Analysis. Now I have a requirement to add a new column into the same report. For each criteria I have added the new column but when I go back to the "Result Columns". I see a new field added but it is not allowing me to open or edit column properties for that new column & at the same time it is not allowing me to navigate to other tabs like Results, Promts, and Advanced.
    I don’t want to build this report from scratch. Is there any workaround to get it resolved?

    Hi,
    Just check it once the new added column data types are mismatched or not?
    and the new added column should be navigated into excluded section, so u should edit the report and dragged into the table column section.
    Thanks..

  • Read date from an email using sender mail adapter.

    Hi All,
    I am working on a scenario, which reads emails from mail box using POP3 protocol and Mail adapter. How to get the mail attributes like received date? I have to take some decisions based on that field.
    Also can we tell to move that mail to different folder in that mail box after successfully read? it is like archiving folder in that mail box.
    Regards,
    Hari

    Hi Hari,
    You use IMAP4 (Internet Message Access Protocol) to retrieve e-mails from a folder of an e-mail server.
    You use POP3 (Post Office Protocol Version 3) to retrieve e-mails from an e-mail server.
    AFAIK,  you have to use IMAP4 protocol for moving email to another folder are reading email successfully. And i don't think POP3 will allow this functionality.
    Regarding email date , If you maintain Message protocol as XIPAYLOAD you will receive all header details(Subject , TO ,FROM ,CC,DATE ,etc ) in your payload.
    Thanks
    Hari.

  • Trouble reading data from GPIB instrument using VISA

    Hello, I am having trouble with reading data from a GPIB instrument in LabVIEW. It appears that the data that is returned from VISA read is incorrect. (I used NI Spy to verify what it should be and what I get, they are different) The odd thing is that when I use the VISA interactive control utility to get the data, it works perfectly. Is there some sort of VISA property that I need to set to get it to work right? Writing to the device seems to work correctly. If you need more info, please e-mail me @ [email protected] Thanks in advance!

    What exactly do you mean when you say the data you are getting is incorrect? I'm guessing that you are dealing with some sort of data type issue. The VISA Read VI will return a set number of bytes in string (ASCII) format. If you are expecting a different data type, you will have to do some conversion by either using a type cast or string conversion function. The type cast function can be found in the Advanced-> Data Manipulation palette, while the string conversion functions can be found in the String palette.

Maybe you are looking for

  • Slate 21 Pro ongoing sleep problems that can't be resolved

    I just bought a slate 21 pro after hearing about sleep related issues, but was encouraged by various reports of solutions in the form of a replacement unit with upgraded scalar firmware, not using keyboard/mouse, not connecting an hdmi in device and/

  • Content Server URL Check is getting failed.

    Hi, We have Installed Content Server 6.4 on Windows Server 2008 (64 Bit OS) and IIS 7.0 with all the latest patches. The sapinst log file shows that the Installation was successfull with no errors. But, still URL check for Content server is getting f

  • Lumia 1520 Reboots

    Hi, i just got my second lumia 1520.. Both of them reboots (restarts) at random times, most often when i am on my way to school with the train. (happens at home, in school and so on also, just not that often)  are more people having this problem?   t

  • My music got deleted!!

    MY SONGS ARE ALL GONE!!! i was updating my ipod with new songs and when itunes came up it asked me whether i wanted to update my ipod with songs that are in my library. i clicked ok (cuz im an idiot) and then it said updating ipod. when i disconected

  • Appearence theme keeps changing to the one i had on the old version of firefox, even when i have removed the add-on.

    When i change my appearance theme, it changes to the one i chose. But when i close firefox, and reopen it, the appearance theme changes back to the old theme, even though i have removed the add-on.