Error in MOVE-CORRESPONDING  statement

Hi all,
I am facing issue in move-corresponding statement.
Form:
FORM get_first_data USING   it_lifnr TYPE ty_lifnr
                             it_prdha TYPE ty_prdha
                             it_matnr TYPE ty_matnr
                             ct_list_struct TYPE yt_list_struct
                             pd_datab LIKE sy-datum
                             pd_datbi LIKE sy-datum.
In loop statment:
LOOP AT lt_eket.
  Liste mit EKET-Einträgen anreichern
    clear ld_subrc.
    CLEAR ct_list_struct.
    MOVE-CORRESPONDING lt_eket TO ct_list_struct.
After this statement it is giving error that, ct_list_struct is not a structure or internal table with header line.

Hi,
Is ct_list_struct an internal table? if so, try to declare a work area for assigning data:
FORM get_first_data USING it_lifnr TYPE ty_lifnr
it_prdha TYPE ty_prdha
it_matnr TYPE ty_matnr
ct_list_struct TYPE yt_list_struct
pd_datab LIKE sy-datum
pd_datbi LIKE sy-datum.
"In loop statment:
data: wa_list_struct like lines of ct_list_struct
LOOP AT lt_eket.
* Liste mit EKET-Einträgen anreichern
clear ld_subrc.
CLEAR ct_list_struct.
MOVE-CORRESPONDING lt_eket TO wa_list_struct.
append wa_list_struct to ct_list_struct.
thanks,

Similar Messages

  • Change "MOVE-CORRESPONDING" statement to MOVE statement in FM

    Hello Guys,
    I have created a datasource based on FM standard template RSAX_BIW_GET_DATA. In the source code in this template, there is a LOOP statement and below that there is a "MOVE-CORRESPONDING" statement.
    LOOP AT g_t_select INTO l_s_select WHERE fieldnm = 'PGMID'.
            MOVE-CORRESPONDING l_s_select TO l_r_pgmid.
            APPEND l_r_pgmid.
    ENDLOOP.
    My customer does not allow MOVE-CORRESPONDING statement for performance reasons. Hence I need to change it to MOVE statement. But I do not know the structure of l_s_select and I am not well at ABAP. So How do I write MOVE statement here.
    Can anybody help on this?
    Regards
    Utpal

    Hi Tibollo,
    Thanks for your prompt reply. Your suggestion has solved my problem. One input to this from  my side. It will not accept FIELDNM because it is not present in l_r_pgmid. Remind you l_r_pgmid is declard as a range and ranges does not have FIELDNM.
    Anyway, that portion I have modified and it worked. Thanks a lot. I am rewarding u points.
    Regards
    Utpal

  • Syntax  of move corresponding

    hi
    Can anyone give me the syntax of move corresponding.
    I even want to know wat does this exactly do.
    Can I have some sample sof move corresponding.
    Its urgent.U'll get points.
    Thanking you
    Chandrika.

    hi,
    MOVE-CORRESPONDING
    Basic form
    MOVE-CORRESPONDING struc1 TO struc2.
    Effect
    Interprets struc1 and struc2 as structures. If, for example, struc1 and struc2 are tables, it executes the statement for their header lines.
    Searches for the sub-fields which occur both in struc1 and struc2 and then generates, for all relevant field pairs which correspond to the sub-fields ni, statements of the form
    MOVE struc1-ni TO struc2-ni.
    The other fields remain unchanged.
    With complex structures, the full names of the corresponding field pairs must be identical.
    Example
    DATA: BEGIN OF INT_TABLE OCCURS 10,
            WORD(10),
            NUMBER TYPE I,
            INDEX  LIKE SY-INDEX,
          END   OF INT_TABLE,
          BEGIN OF RECORD,
            NAME(10) VALUE 'not WORD',
            NUMBER TYPE I,
            INDEX(20),
          END   OF RECORD.
    MOVE-CORRESPONDING INT_TABLE TO RECORD.
    This MOVE-CORRESPONDING statement is equivalent to both the following statements:
    MOVE INT_TABLE-NUMBER TO RECORD-NUMBER.
    MOVE INT_TABLE-INDEX  TO RECORD-INDEX.
    Example
    TYPES: BEGIN OF ROW1_3,
             CO1 TYPE I,
             CO2 TYPE I,
             CO3 TYPE I,
           END   OF ROW1_3.
    TYPES: BEGIN OF ROW2_4,
             CO2 TYPE I,
             CO3 TYPE I,
             CO4 TYPE I,
           END   OF ROW2_4.
    TYPES: BEGIN OF MATRIX1,
             R1 TYPE ROW1_3,
             R2 TYPE ROW1_3,
             R3 TYPE ROW1_3,
           END OF   MATRIX1.
    TYPES: BEGIN OF MATRIX2,
             R2 TYPE ROW2_4,
             R3 TYPE ROW2_4,
             R4 TYPE ROW2_4,
           END OF   MATRIX2.
    DATA: ROW TYPE ROW1_3,
          M1  TYPE MATRIX1,
          M2  TYPE MATRIX2.
    ROW-CO1 = 1. ROW-CO2 = 2. ROW-CO3 = 3.
    MOVE: ROW TO M1-R1, ROW TO M1-R2, ROW TO M1-R3.
    MOVE-CORRESPONDING  M1 TO M2.
    The last MOVE-CORRESPONDING statement is equivalent to the statements:
    MOVE: M1-R2-CO2 TO M2-R2-CO2,
          M1-R2-CO3 TO M2-R2-CO3,
          M1-R3-CO2 TO M2-R3-CO2,
          M1-R3-CO3 TO M2-R3-CO3.
    Note
    The same runtime errors may occur as with MOVE.
    Note
    This statement assigns values based on pairs of fields with identical names. To avoid unwanted assignments, you should consider all fields of the source and target structures. If either is defined with reference to an ABAP Dictionary type (for example, a database table), remember that any subsequent extension to the type could cause coincidental pairs of identically-named fields, which could lead to incorrect program logic.
    Regards,
    Sourabh

  • Move-corresponding in table type Field-Symbols

    Hi,
        I have to use one statement in field-symbol similar to "move-corresponding" in normal internal table.Is it possible to use statement similar to "Move-corresponding in field-symbols".
    For Eg:
    Field-symbols <FA_IT> type standard table.
    data:begin of wa_ekk,
       f1 type i,
       f2 type werks_d,
       f4 type posnr,
       end of wa_ekk,
    it_ekk  like standard table of wa_ekk.
    begin of wa_final,
       f1 type i,
       f2 type werks_d,
       f3 type i,
       f4 type n,
    end of wa_final,
    it_final like standard table of wa_final.
    assign it_ekk to <fs_it>.
    Loop at <fs_it>.
    *???????-i dont know how to move the value to it_final
    *---I know I can use assign component statement
    *-to move each field  to the target field
    but for that we need to know the field name or index position of the structure-
    Endloop.
    My requirment is now i want to move the content of <fs_it> into it_final internal table.
    I know that In normal itab we can use "move-corresponding" to move the value from it_ekk to it_final.
    In the same way how to use it in field-symbol concept.
    Requirement:Real time Processing of Internal table
    1) Content of it_ekk:
    f1   f2       f4
    12  1000  0023
    23  2000  0037
    2)After ASSIGN statement:
    Content of <fs_it> is:
    f1   f2       f4
    12  1000  0023
    23  2000  0037
    3)Now I want to move the content of <fs_it> to it_final
    Output of It_final:
    F1   F2    F3    F4
    12  1000   ---    0023
    23  2000   ---    0037
    Regards,
    Vigneswaran S

    Andrey's code is going to work only if you are running it in a non-unicode system.
    See code below for a Unicode system using similar effect to "Move-Corresponding" statement.
    FIELD-SYMBOLS: <fs_ekk> LIKE wa_ekk,
                   <fs_final> LIKE wa_final.
    ASSIGN it_ekk TO <fs_it> .
    LOOP AT <fs_it> ASSIGNING <fs_ekk>.
      ASSIGN <fs_ekk> TO <fs_final> CASTING.
      CLEAR <fs_final>-f3.
      APPEND <fs_final> TO it_final.
    ENDLOOP.
    Hope this solves your problem and please don't forget to reward points.
    Cheers,
    Sougata.

  • Conditional MOVE-CORRESPONDING

    Hi, I need to write a piece of code to move records from one internal table to another table. I got to know about the MOVE-CORRESPONDING statement in ABAP. Now my question is: if I use the following, what will the system do:
    MOVE-CORRESPONDING ITAB1 TO ITAB2.
    Will all the contents of ITAB1 be moved to ITAB2? I want to add a condition to it. Is that possible?
    Thanks.

    Hi,
    Syntax:
    MOVE-CORRESPONDING <sourcestruct> TO <destinationstruct>.
    This statement assigns the contents of the components of structure <sourcestruct> to the components of the <destinationstruct> structure that have identical names.
    If you want to add a condition to, it is better using MOVE statement instead.
    Regards,
    Ferry Lianto

  • Itab move corresponding

    hello abap gurus,
    in my requirement,
    all the records in ITAB1 need to be moved to ITAB2  where
    both have a common key field which should match.
    Note: ITAB1 and ITAB2 have only few common fields. ITAB2 is completely empty.
    can someone tell the best way of coding this.
    thank you.

    check out this example.would be helpfull
    DATA: BEGIN OF INT_TABLE OCCURS 10,
            WORD(10),
            NUMBER TYPE I,
            INDEX  LIKE SY-INDEX,
          END   OF INT_TABLE,
          BEGIN OF RECORD,
            NAME(10) VALUE 'not WORD',
            NUMBER TYPE I,
            INDEX(20),
          END   OF RECORD.
    MOVE-CORRESPONDING INT_TABLE TO RECORD.
    This MOVE-CORRESPONDING statement is equivalent to both the following statements:
    MOVE INT_TABLE-NUMBER TO RECORD-NUMBER.
    MOVE INT_TABLE-INDEX  TO RECORD-INDEX.

  • Move n move corresponding

    frends please provide me the detail document and scenarios where we use with examples about move and move corresponding  statements?

    Hi,
    Please check this.
    Assigning Values with MOVE:
    To assign the value of a data object source to a variable destination, use the following statement:
    MOVE source TO destination.
    or the equivalent statement
    destination = source.
    The content of source remains unchanged, source does not therefore have to be a variable - it can also be a literal, a text symbol, or a constant. You must always specify decimal points with a period (.), regardless of the user’s personal settings.
    Multiple assignments
    f4 = f3 = f2 = f1.
    are also possible. ABAP processes them from right to left as follows:
    MOVE f1 TO f2.
    MOVE f2 TO f3.
    MOVE f3 TO f4.
    Assigning Values Between Components of Structures (MOVE-CORRESPONDING):
    The rules for value assignments between data objects also apply to structures. With the command
    DATA: struct1 TYPE structure,
          struct2 TYPE structure.
    struct1 = struct2.
    two structures of the same type can be assigned to one another without difficulty. Here, the entire source structure is seen as a unit and copied to the source structure. It is then possible to access the components individually again. If the structures in question are not compatible, see the conversion rules for structures.
    In practice, however, you will often only need to assign certain components of a structure to be certain components of another structure. ABAP has a special statement for this purpose:
    MOVE-CORRESPONDING sourcestruct TO destinationstruct.
    This statement assigns the contents of the components of structure sourcestruct to the components of the destinationstruct structure that have identical names.
    When it is executed, it is broken down into a set of MOVEstatements, one for each pair of fields with identical names, as follows:
    MOVE sourcestruct-comp1 TO destinationstruct-comp1.
    MOVE sourcestruct-comp2 TO destinationstruct-comp2.
    Regards,
    Ferry Lianto

  • MOVE-CORRESPONDING Alternative..

    It is recommended not to use the Move-corresponding statements in the code.
    Is there any alternative of that..which improves performance.
    ex.
    MOVE-CORRESPONDING WA_ITAB1 TO WA_SUCLOG.
    please suggest.
    Thanks.

    > It is recommended not to use the Move-corresponding statements in the code.
    Where is this recommended, except in posts here that are copied from previous posts that are copied from previous posts that are...
    As I stated on similar occasions, "corresponding" (in move and select statements) allows for very efficient programming techniques, whereas the performance aspect is neglectable (just compare yourself for heaven's sakes).
    My favourite example is an ALV list based on a DDIC structure with the field catalog. Two new fields from already accessed tables are required. If you programmed the list correctly all you need to do is add those two fields to the DDIC structure and that's it. Thanks to "corresponding".
    Thomas

  • Statement not accesible  : "MOVE-CORRESPONDING ebkn TO *ebkn."

    hi guys,
    (system upgraded from 4.6 to 6.0 and made unicode compatible)
                    thr r two problems........
    1. "MOVE-CORRESPONDING ebkn TO *ebkn." is not accessible, is it something related to mirror image......... how to resolve this.
    2. Refresh it_tab - "Refresh and clear statements are not accesible" .
      These are present inside includes..... ( is it somewhere related to use of subroutines prior to the use of refresh or clear statement......)
    Those tables are defined prior to the statement Refresh or Clear.......

    Hi Mohd,
    please paste error message(s) in detail:
    source name(s)
    source line(1)
    full error message including message class, type and number
    If you get W messages (warnings), you may ignore them.
    Regards,
    Clemens

  • Messge box states "Error Compiling Movie"

    Messge box states "Error Compiling Movie" I had already rendered the this file in a longer version earlier

    Messge box states "Error Compiling Movie" I had already rendered the this file in a longer version earlier

  • Move-corresponding Doubt

    Hello Experts,
        I am having 10 fields in say structure s_struct1 and another structure is having 12 fields.
      If i will use Move-corresponding from S_STRUCT1 TO S_STRUCT2.
    insted of Move statetement 10 time for 10 different fields.
    Which will take more time and how much more time?
    Neno sec, Micro sec, Mili sec, Sec, mins etc.
    Keep in Mind 10 move statements and 1 move-corresponding.
    Target 10 field value move.
    Regards,
    Preeti Gupta
    Message was edited by:
            Preeti Gupta

    The MOVE-CORRESPONDING is not performance issue. It has a slight overhead against the specified moves, this should be clear, if you think about it.
    The programmed moves specify something, which the MOVE-CORRESPONDING most find out.
    Use MOVE-CORRESPONDING, if you structures can change, otherwise you get an error later or you must the program again.
    Don't use MOVE-CORRESPONDING if your table is buffered, because the buffer select is so fast, that the MOVE-CORRESPONDING is in  the same range.
    But never forget, performance is determined by indexes, not by MOVE-CORRESPONDING!
    Siegfried

  • DML Error logging for Update statement

    Hello,
    I am facing a problem with regard to DML Error logging with Update statement .
    oracle : 10.2
    I am executing following DML update:
    BEGIN
    UPDATE
    table_1  a
    SET a.Exp_DATE =a.EFF_DATE
    WHERE  a.col_a1 != (SELECT b.colb1
                         FROM table_2  b
                         WHERE  a.msisdn =b.msisdn )
    LOG ERRORS INTO table_1_ERR REJECT LIMIT UNLIMITED;                        
    END ;    I was expecting that "ORA-01427: single-row subquery returns more than one row" would be captured in LOG error table "table_1_err"
    but instead I got run time error and whole dml was rolled back.
    Please let me know whether this exception is not captured by DML error logging.
    Thanks,
    Abhishek

    *Oracle logs the following errors during DML operations:** Column values that are too large.
    * Constraint violations (NOT NULL, unique, referential, and check constraints).
    * Errors raised during trigger execution.
    * Errors resulting from type conversion between a column in a subquery and the corresponding column of the table.
    * Partition mapping errors.
    >
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14223/transform.htm#sthref777

  • ERROR:MapLib:973 - Tri-state buffers are not supported in this architecture.

    Hi,
    I face a ERROR:MapLib:973 problem with inout port in a pcore component.
    I need ton instantiate an inout port at the top level to communicate wih my peripherical.
    This inout port is driven by an XPS IP core (pcore).
    The .mpd is  :
    PORT fdata = "", DIR = INOUT , VEC = [31:0], ENABLE=SINGLE, THREE_STATE = TRUE,TRI_I = fdata_I, TRI_O = fdata_O, TRI_T = fdata_T
    PORT fdata_I = "", DIR = I , VEC = [31:0]
    PORT fdata_O = "", DIR = O , VEC = [31:0]
    PORT fdata_T = "", DIR = O
    The .vhd is :
    fdata_o : out std_logic_vector(31 downto 0);
    fdata_i : in std_logic_vector(31 downto 0);
    fdata_t : out std_logic ;
    I got ERROR:MapLib:973 - Tri-state buffers are not supported in this architecture messages for each
    signals of my fdata PORT, while mapping !
    Thanks for you help.

    What device are you targeting, and what version of the software are you using?
    I target a xc7k325t-fbg676-2.
    I use ISE 14.3 form platgen to xst and 14.7 from map to bitgen.
    What does your top level HDL (verilog or VHDL) file look like (where the IO must be instantiated)?
    It is a .vhd in whitch i wrapp my top XPS core, described by .mhs
    The problematic IO port is instantiated into the mb_core.vhd (generated by XPS).
    If i open it, i could see that the tool correctly infer the corresponding IOBUF's :
    component mapping :
    fdata_I => FX3_DQ_I,
    fdata_O => FX3_DQ_O,
    fdata_T => FX3_DQ_T,
    One IOBUF infered:
    iobuf_1 : IOBUF
    port map (
    I => FX3_DQ_O(31),
    IO => FX3_DQ(31),
    O => FX3_DQ_I(31),
    T => FX3_DQ_T
    Top level port :
    FX3_DQ : inout std_logic_vector(31 downto 0);
    THEN FX3_DQ  signal is dirrectly branched in my upper level (top level) vhd file, with the same name.
    What do your constraints file look like (where the pin number and names get declared)?
    The port is only constrained in .ucf, like that:
    NET FX3_DQ[0] LOC = "B24"| IOSTANDARD = LVCMOS33 ;
    NET FX3_DQ[31] LOC = "G26"| IOSTANDARD = LVCMOS33 ;#Bank 14
     

  • Error Playing Movie

    I have a new iphone that I bought and activated in the States. Im now located in China and will be here for a couple of months. When I go to YouTube on the main screen, the iphone takes me there. When I attempt to play any movie I get an error message of "Error Playing Movie".
    I have a wifi connection where I live and I am able to access and play youtube vids on my laptop without any problems. I am connected to the same wifi on my iphone and it shows the little wave icon next to the China Mobile carrier name and is active...and I can surf the Internet.
    In trying to troubleshoot, I also connected to Itunes and did a iphone restore. It didn't do anything.
    Is there an official fix to this problem? Or is my iphone just broken? Anyone have any ideas....thanks!

    From reading other sites and Googling around, it seems Google or PRC are blocking the videos from playing on iPhone in mainland China via wifi. Crazy, since you can view them on a laptop perfectly fine.
    In Beijing, on my MacBook, I can view any YT video (at least since it was unblocked by the government not so long ago). Now, when I share my ethernet connection via Airport and connect my iPhone via wifi, it can browse YT.app videos, search, see Top Rated, etc. but attempting to play always results in the "Error playing movie" message. Really stupid since the connection is the exact same - my iPhone online via my MacBook.
    People have suggested the videos are incompatible as YT are updating the videos to H.264 but that's definitely not the case, they're simply being blocked - absolutely none work for me. When I was in Hong Kong a few weeks ago, it was not an issue.
    I tried NetShade (a proxy program) which can get around some of China's blocking but not this YT on iPhone.
    By the way, could you point me to the China Mobile EDGE settings?
    Regards,
    spriter

  • Error Compiling Movies: Unknown Error while exporting

    Hey guys...I searched every where and have yet to find a solution to my problem so sorry if this is a repeat post...but as the title states, I get an "unknown error" message after successfully rendering my clip/sequence and trying to export. So the error occurs while trying to export my rendered clip. The exact message is "Error Compiling Movies: Unknown Error. This has been extremely frustrating as I have done tons of edits with out experiencing this issue. It started happening out of no where. Anybody got any advice or fixes? Much would be appreciated.

    Error Compiling Movie
    -http://helpx.adobe.com/premiere-pro/kb/error-compiling-movie-rendering-or.html
    -http://helpx.adobe.com/premiere-elements/kb/error-error-compiling-movie-render.html
    -and nested sequences http://forums.adobe.com/thread/955172
    -and WMV files frame rate http://forums.adobe.com/message/4629210

Maybe you are looking for

  • Adobe Premiere Pro CC

    Everytime i try to export my project i get the message "Sorry, a serious error has occurred that requires Adobe Premiere Pro to shut down. We will attempt to save your current project" How can i just export my project?

  • How to remove the last blank line in the downloaded text file?

    Hi All, I am downloading the one internal table content using the GUI_DOWNLOAD to a text file(.txt). The cursor is in last position of the text file where there is no content. For example consider the below is downloaded txt file: This is test file.

  • Adding a 4250 into CSM...

    4350 running 6.0 CSM running 3.3.0 SP2 I have a few or these I need to add into CSM and the all are failing... Does anyone have basic instructions for doing this? Should be pretty straight forward but I keep getting http errors. Thanks...

  • HP Pavilion g7 notebook

    Error message fan is over heating.  Area location of heat source:  upper left underneath the laptop.  What is this part called so I can replace it?

  • Buying an iPad for Mom

    We are thinking about buying an iPad for my Mom. Since I have no experience with an iPad, I need input from some real users like the people here. Mom originally wanted a GPS for her birthday, but it is something she would use so rarely that it would