How to delete a field from a Dynamically created internal table

Hi friends,
I have got a requirement in which, I will be entering the table name and Excel file from seletion-screen.
based on the Table I have entered in the selection-screen I need to create a dynamic internal table so that I can fill that Execel data into that internal table and later i using BDC i can I can fill the database table using SM30 transaction.
here. my problem is that, When I am creating internal table dynamically, MANDT filed is also getting created in the internal table.
please, help in deleteing the filed MANDT from the internal able.
following is the code which creates the dynamic internal table.
CREATE DATA dy_table TYPE TABLE OF (p_tabname).
assign dy_table->* to <dyn_table>.
please provide, if any sample code is available.
Regards,
Xavier.P

Hi,
You can use this logic,
While creating the Dynamic filed catalog try to avoid MANDT field.
Ex:
*Dynamic creation of a structure
  CREATE DATA LP_STRUCT TYPE (V_TABLE).
  ASSIGN LP_STRUCT->* TO <FS>.
*Fields Structure
  OF_SDESCR ?= CL_ABAP_TYPEDESCR=>DESCRIBE_BY_DATA( <FS> ).
LOOP AT OF_SDESCR->COMPONENTS ASSIGNING <COMPONENTS>.
*Field MANDT not displayed
    IF SY-TABIX = 1 AND <COMPONENTS>-NAME = 'MANDT'.
      CONTINUE. " Next loop
    ENDIF.
*Build Fieldcatalog
    LS_LVC_CAT-FIELDNAME = <COMPONENTS>-NAME.
    LS_LVC_CAT-REF_TABLE = V_TABLE.
    APPEND LS_LVC_CAT TO LT_LVC_CAT.
    CLEAR LS_LVC_CAT.
  ENDLOOP.

Similar Messages

  • Uploading data from excel file to a dynamically created internal table

    Hi,
    I have a requirement where i have to upload data from an excel file into a database table. I would be able to determine the structure of the table only at runtime based on the user input.. so i have created an internal table dynamically.
    Could you please tell me if its possible to upload data from an excel file to the dynamically created internal table using any function modules?
    I thought of doing this by declaring a generic internal table of one field and then uploading the *.csv file into it and then splitting it based on "," and then assigning it to the field symbol referencing the internal table.. but my file length exceeds 132 characters and i'm only able to get data of lenght 132 char's in my internal table ( generic one).
    Could anyone please show me a way around this.
    Thanks in advance,
    Harsha

    Sure, check this out.
    report zrich_0002.
    type-pools: slis.
    field-symbols: <dyn_table> type standard table,
                   <dyn_wa>,
                   <dyn_field>.
    data: it_fldcat type lvc_t_fcat,
          wa_it_fldcat type lvc_s_fcat.
    type-pools : abap.
    data: new_table type ref to data,
          new_line  type ref to data.
    data: iflat type table of string.
    data: xflat type string.
      data: irec type table of string with header line.
      data: tabix type sy-tabix.
    data: file type string.
    selection-screen begin of block b1 with frame title text .
    parameters: p_file type  rlgrap-filename default 'c:Test.csv'.
    parameters: p_flds type i.
    selection-screen end of block b1.
    start-of-selection.
    * Add X number of fields to the dynamic itab cataelog
      do p_flds times.
        clear wa_it_fldcat.
        wa_it_fldcat-fieldname = sy-index.
        wa_it_fldcat-datatype = 'C'.
        wa_it_fldcat-inttype = 'C'.
        wa_it_fldcat-intlen = 10.
        append wa_it_fldcat to it_fldcat .
      enddo.
    * Create dynamic internal table and assign to FS
      call method cl_alv_table_create=>create_dynamic_table
                   exporting
                      it_fieldcatalog = it_fldcat
                   importing
                      ep_table        = new_table.
      assign new_table->* to <dyn_table>.
    * Create dynamic work area and assign to FS
      create data new_line like line of <dyn_table>.
      assign new_line->* to <dyn_wa>.
      file = p_file.
      call method cl_gui_frontend_services=>gui_upload
        exporting
          filename                = file
        changing
          data_tab                = iflat
        exceptions
          file_open_error         = 1
          file_read_error         = 2
          no_batch                = 3
          gui_refuse_filetransfer = 4
          invalid_type            = 5
          no_authority            = 6
          unknown_error           = 7
          bad_data_format         = 8
          header_not_allowed      = 9
          separator_not_allowed   = 10
          header_too_long         = 11
          unknown_dp_error        = 12
          access_denied           = 13
          dp_out_of_memory        = 14
          disk_full               = 15
          dp_timeout              = 16
          others                  = 17.
      loop at iflat into xflat.
        clear irec. refresh irec.
        split xflat at ',' into table irec.
        loop at irec.
          tabix = sy-tabix.
          assign component tabix of structure <dyn_wa> to <dyn_field>.
          <dyn_field> = irec.
        endloop.
        append <dyn_wa> to <dyn_table>.
      endloop.
    * Write out data from table.
      loop at <dyn_table> into <dyn_wa>.
        do.
          assign component  sy-index  of structure <dyn_wa> to <dyn_field>.
          if sy-subrc <> 0.
            exit.
          endif.
          if sy-index = 1.
            write:/ <dyn_field>.
          else.
            write: <dyn_field>.
          endif.
        enddo.
      endloop.
    Regards,
    Rich Heilman

  • Appending column to an dynamically created internal table

    Hi folks,
    i have an dynamically created internal table <dyn_tab> which is based on a parameter p_table (  containing the table name ). now i want to add one more column to this <dyn_tab> table where i can store further information in. how can i do that ?
    i appreciate your help!

    Hi,
    Please check this sample program.
    type-pools : abap.
    field-symbols: <dyn_table> type standard table,
                   <dyn_wa>,
                   <dyn_field>.
    data: dy_table type ref to data,
          dy_line  type ref to data,
          xfc type lvc_s_fcat,
          ifc type lvc_t_fcat.
    selection-screen begin of block b1 with frame.
    parameters: p_table(30) type c default 'T001'.
    selection-screen end of block b1.
    start-of-selection.
      perform get_structure.
      perform create_dynamic_itab.     
    form get_structure.
      data : idetails type abap_compdescr_tab,
           xdetails type abap_compdescr.
      data : ref_table_des type ref to cl_abap_structdescr.
      * Get the structure of the table.
      ref_table_des ?= 
          cl_abap_typedescr=>describe_by_name( p_table ).
      idetails[] = ref_table_des->components[].
        loop at idetails into xdetails.
        clear xfc.
        xfc-fieldname = xdetails-name .
        xfc-datatype = xdetails-type_kind.
        xfc-inttype = xdetails-type_kind.
        xfc-intlen = xdetails-length.
        xfc-decimals = xdetails-decimals.
        append xfc to ifc.
      endloop.
    *Add your new field(s) into table ifc here.
    endform.
    form create_dynamic_itab.
    * Create dynamic internal table and assign to FS
      call method cl_alv_table_create=>create_dynamic_table
                   exporting
                      it_fieldcatalog = ifc
                   importing
                      ep_table        = dy_table.
        assign dy_table->* to <dyn_table>.
      * Create dynamic work area and assign to FS
      create data dy_line like line of <dyn_table>.
      assign dy_line->* to <dyn_wa>.
    endform.
    Regards,
    Ferry Lianto

  • How to delete a field from search help which is delivered

    hi
    I got a requirement to delete a field from search help which is delivered long back
    Regards
    krishna

    Hi
    Whether it exists in DEV system or not?
    Take the name of that Search Help from PRD/Quality(if it is not there in DEV system) and modify/change it by removing that field from the search help in DEV system and create a Transport request and transport the same request to Quality/PRD systems
    Now the New changes (in which the field was removed) will be over written on the old search help in the PRD system, since it is the same Name (search help)
    Regards
    Anji

  • How to delete a row from a SQL Server CE Table with multiple JOINs?

    I want to delete a record from a SQL Server CE table.
    There are 3 tables scripts, options and results. I would like to remove a record from the results table. The where clause contains dynamic information which retrieved via other queries to different tables in the same database. These queries work fine and deliver
    the desired data.
    The Compact server is a clone of a remote table created using the sync framework. The same query to the remote table works fine.
    The error I get is:
    There was an error parsing the query. [ Token line number = 1,Token line offset = 10,Token in error = from ]
    The code that throws the exception is as follows:
    Dim connLoc As SqlCeConnection = New SqlCeConnection(My.Settings.ConnectionString)connLoc.Open()     Dim strDel As String = "Delete r from ResultsTable r inner join OptionsTable o ON o.TestName=r.TestName inner join ScriptTable c ON r.TestName=c.TestName WHERE r.TestName = '" & ds1Loc.Tables(0).Rows(0)(1) & "' AND [Index] = '" & lstIndex & "'"Dim cmdDel As SqlCeCommand = New SqlCeCommandcmdDel.CommandText = strDelcmdDel.Connection = connLoccmdDel.ExecuteNonQuery()
    The values held in ds1Loc.Tables(0).Rows(0)(1) and lstIndex are
    correct so should not be the problem.
    I also tried using parameterised queries
    Dim strDel As String = "Delete r from [ResultsTable] r inner join [OptionsTable] o ON o.TestName=r.TestName inner join [ScriptTable] c ON r.TestName=c.TestName WHERE r.TestName = @TestName AND [Index] = @lstIndex"
    Dim cmdDel As SqlCeCommand = New SqlCeCommand        cmdDel.CommandText = strDel       
    With cmdDel.Parameters           
    .Add(New SqlCeParameter("@TestName", ds1Loc.Tables(0).Rows(0)(1)))           
    .Add(New SqlCeParameter("@lstIndex", lstIndex))       
    End With 
    cmdDel.Connection = connLoc        cmdDel.ExecuteNonQuery()
    I have tried replacing the "=" with "IN" in the the WHERE clause but this has not worked.
    Is it the join that is causing the problem? I can do a select with the same search criteria and joins from the same database.
    Also this query works with SQL Server. Is it perhaps that SQL CE does not support the Delete function the same as SQL Server 2008? I have been looking at this for a while now and cannot find the source of the error. Any help would be greatly appreciated.

    Hello,
    In SQL Server Compact, we can use join in FROM clause. The DELETE statement fail may be caused by the FOREIGN KEY constraint.
    Please refer to:
    DELETE (SQL Server Compact)
    FROM Clause (SQL Server Compact)
    Regards,
    Fanny Liu
    Fanny Liu
    TechNet Community Support

  • How to delete invisible fields from screen painter SE51?

    Dear all,
    How to delete/remove invisible fields from screen painter SE51?
    Thanks.

    HI,
    just go to screen painter-->layout in change mode.
    the invisible fields will be looking faded
    click on that and press the DEL button.
    that will be deleted.
    <b><REMOVED BY MODERATOR></b>
    vivekanand
    Message was edited by:
            Alvaro Tejada Galindo

  • Short dump while reading a currency field from Flat file into internal tabl

    Hi,
    I am getting a short dump........saying number conversion dump (while reading a currency value into field in internal table from a fixed lenght flat file).........
    Do I need to use a string variable to get the value from flat file or how ??
    Please suggest.

    Santosh,
    Thanks for your inputs,
    But my internal table type is of DEC (5,2) , I am getting that... it needs to be of type 'C'. Can you suggest.
    Ex :
    MOVE wa_temp-infile_string+106(8)  TO wa_item-QT_PERCENT
    This didnt work
    so i tried moving into a seperate variable
    MOVE wa_temp-infile_string+106(8)  TO v_percent.
    and then write to
    WRITE v_percent to  wa_item-QT_PERCENT.

  • How to upload an excel to a dynamically generated internal table?

    Hi,
    I have an excel sheet. I have to create an internal table dynamically according to the fields of the excel sheet. The internal table i have created successfully, the fields are exactly coming as the excel sheet. I need to upload the excel sheet directly to my Internal table.
    Similar to the FM GUI_UPLOAD, which directly uploads the text document into the internal table
    I am not able to pass my dynamic internal table to the GUI_UPLOAD, The tables parameter in the GUI_UPLOAD is accepting only the standard tables.
    How to do?
    -Sudheer

    Hi,
    Use TEXT_CONVERT_XLS_TO_SAP  Function  Module.
    AWARD POINTS IF USEFUL

  • Passing values to dynamically created internal table

    Hi,
    I have the flat file data as
    f1,f2,f3........so on
    where f1 f2 and f3 are field names.
    I have a variable var which contains the data
    V1,0001,0002.........so on
    data: var type string.
    The value of field f1 is v1
    The value of field f2 is 0001
    The value of field f3 is 0002.......so on
    FIELD-SYMBOLS:     <fs_1> TYPE STANDARD TABLE
    I have dynamically created an internal table for fields f1  f2 f3 ...... using 
      CALL METHOD cl_alv_table_create=>create_dynamic_table
        EXPORTING
          it_fieldcatalog           = lt_fieldcatalog
        IMPORTING
          ep_table                  = <fs_data>
        EXCEPTIONS
          generate_subpool_dir_full = 1
          OTHERS                    = 2.
      IF sy-subrc <> 0.
      ENDIF.
    ASSIGN <fs_data>->* TO <fs_1>.
    Now for <fs_1> I have to pass the corresponding values of the fields f1 f2 f3 .
    How can i solve this.
    Thanks and regards ,
    Parvatha Reddy

    Hi,
    There is no data in <fs_1>.
    I need to pass the data form the string var to the fields of <fs_1>..
    I understand that you want to populate the internal table <fs_1>.
    for that you fist need work area.. use below statement to create work area..
    DATA: new_line TYPE REF TO data.
    CREATE DATA new_line LIKE LINE OF <fs_1>.
    ASSIGN new_line->*  TO <fs_2>.
    <fs_2> is not your work aread...
    to assign value to each field of you work aread <fs_2>. use statement
    ASSIGN COMPONENT 1 OF STRUCTURE <fs_2> TO <fs_3>.
    <fs_3> = f1 .
    now <fs_3> will point to the first field of work area <fs_2>, f1 is value from your string .. repeat above for each field in workarea, by increasing the component number. Once your work area is filled
    append it to table.
    append <fs_2> to <fs_1>
    apologies if I am not getting the requiremnt correctly..

  • Dynamically create Internal Table

    Hi,
    I have a parameter in the program table name.
    I want to create an Internal Table like the table name entered for this parameter.
    Is this kind of dynamic creation of internal table from a variable possible.
    If yes, can you guys please help me with it.
    Thanks,
    CD

    Sure, its possible. HEre is an example.  And you will find thousands more, when you search this forum. 
    report zrich_0002.
    type-pools: slis.
    field-symbols: <dyn_table> type standard table,
                   <dyn_wa>,
                   <dyn_field>.
    data: alv_fldcat type slis_t_fieldcat_alv,
          it_fldcat type lvc_t_fcat.
    type-pools : abap.
    data : it_details type abap_compdescr_tab,
           wa_details type abap_compdescr.
    data : ref_descr type ref to cl_abap_structdescr.
    data: new_table type ref to data,
          new_line  type ref to data,
          wa_it_fldcat type lvc_s_fcat.
    selection-screen begin of block b1 with frame title text .
    parameters: p_table(30) type c.
    selection-screen end of block b1.
    * Get the structure of the table.
    ref_descr ?= cl_abap_typedescr=>describe_by_name( p_table ).
    it_details[] = ref_descr->components[].
    loop at it_details into wa_details.
      clear wa_it_fldcat.
      wa_it_fldcat-fieldname = wa_details-name .
      wa_it_fldcat-datatype = wa_details-type_kind.
      wa_it_fldcat-inttype = wa_details-type_kind.
      wa_it_fldcat-intlen = wa_details-length.
      wa_it_fldcat-decimals = wa_details-decimals.
      append wa_it_fldcat to it_fldcat .
    endloop.
    * Create dynamic internal table and assign to FS
    call method cl_alv_table_create=>create_dynamic_table
                 exporting
                    it_fieldcatalog = it_fldcat
                 importing
                    ep_table        = new_table.
    assign new_table->* to <dyn_table>.
    * Create dynamic work area and assign to FS
    create data new_line like line of <dyn_table>.
    assign new_line->* to <dyn_wa>.
    * Select Data from table.
    select * into corresponding fields of table <dyn_table>
               from (p_table).
    * Write out data from table.
    loop at <dyn_table> into <dyn_wa>.
      do.
        assign component  sy-index  of structure <dyn_wa> to <dyn_field>.
        if sy-subrc <> 0.
          exit.
        endif.
        if sy-index = 1.
          write:/ <dyn_field>.
        else.
          write: <dyn_field>.
        endif.
      enddo.
    endloop.
    Regards,
    Rich Heilman

  • Search Help doesn't work with a dynamically created internal table

    Hi Gurus,
    I have a custom report that will display the output through edittable ALV.
    My issue is, even though I've already did the FOREIGN KEY assisgnment to each fields of my custom table,
    when I run my report,some fields F$ functionality aint working.
    In my report, I've declared the table to be passed to ALV display dynamically as below:
    *_Create dynamic internal tables for the Final INTERNAL TABLE
      CALL METHOD cl_alv_table_create=>create_dynamic_table
        EXPORTING
          it_fieldcatalog           = gt_fldcatfin
        IMPORTING
          ep_table                  = gp_fintab
        EXCEPTIONS
          generate_subpool_dir_full = 1
          OTHERS                    = 2.
        ASSIGN gp_fintab->* TO <i_xfintab>.
    Where gt_fldcatfin is a modified fieldcatalog (combination of the cutom table fields and 1 column for CELLCOLOR)
    Please help me with this. Thanks a lot.

    This is one way.
    Import photo into illustrator.
    Draw box around photo, no fill ,no stroke colour and place on top of photo.
    Menu - Object - Envelope Distort - Make with Warp - (warp option will appear)
    Use ‘Direct Selection Tool’ (white arrow)
    Select/click on anchor points to alter, you can also use the rotation tool to turn to required position.
    Hope this info' is of help.

  • Uploading Dynamically created Internal table form Flat file

    I am creating dynamic internal table as follows:
    *-create dynamic internal table
      CALL METHOD cl_alv_table_create=>create_dynamic_table
        EXPORTING
          it_fieldcatalog = i_fldcat[]
        IMPORTING
          ep_table        = i_modify.
      ASSIGN i_modify->* TO <fs_tab>.
    The dymamic internal table is created with the given Ztable in the selection screen.
    Now the problem is when I try to upload this table <fs_table> using function module Call function 'UPLOAD'.
    The first column of flat file is getting updated in Mandt of <fs_table>.
    I want to update sy-mandt in MANDT of <fs_table> and the rest of the fields with flat file data.
    e.g.
    Flat file data:
    100 white
    101 black
    <fs_table> structure is getting uploaded as below
    mandt zcode zdesc
    100     white
    101     black
    if the clint is 700
    it has to be uploaded as
    mandt zcode zdesc
    700    100     white
    700    101     black
    Can someone knows what should be the approach or any other function module to be used ?
    Message was edited by:
            Mahesh Sahu

    See the answer in your previous thread and close this thread. why do you want to have many threads for one question.

  • How to delete customized field from an infotype

    Hi All,
    I have created a customized field in standard infotype.Now i want to remove that field. Can anyone pls send me procedure to delete the customized field.
    Thanks
    Partha.

    u can use transaction se11 to delete the corresponding customised domain, data element etc. (if any), and finally delete the structure CI_Pnnnn.
    if u have already input data in the field, u have to firstly delete these data.
    Kind regards,
    Echo

  • How to delete a field from already created search help

    hi
    i got a requirement that delete a search help field which is already delivered
    regards
    krishna

    Hi Krishna,
    1. Go to SE80 and Enter the Package name
    2. Dictionary objects --> Search helps ---> select ur Srarch help[double click it]     --->  CTRL + F1.
    3. Then remove the unwanted fields.
    Thanks,
    Reward If Helpful.

  • How to delete the data from SAP R/3 DB table from BW

    Hi,
       I am facing an issue... I have populated the data into custom r/3 DB table by running a user exit.I am getting the data and loading(Full Load) it in BW ODS. But my problem is when i rerun the user exit it is giving me a short dump saying "SAPSQL_ARRAY_INSERT_DUPREC". when i delete the enteries of DB table it is working fine. But this fine in development.but i production i cannot do this.So i want to delete the DB table enteries by an ABAP program and call this ABAP program using Process chain when my ODS data LOAD is successful. How to go About this.
    P.S: I want only to delete the DB table enteries not the DB table.....
    Thanks and Regards
    Sairam phani

    Sairam,
    why don't you just add the code for deletion of records into that user exit, so it would first delete entries and then write new ones.
    Alternatively, you could use a Process Chain to trigger an event in R/3, and by that event a scheduled job would run, deleting entries from that table.
    As I don't know details of the solution you're implementing, that's all I can think of now.
    Cheers,
    /RB

Maybe you are looking for

  • I seem to have turned my touchpad off on my Satellite C

    Hi I seem to have disabled my touch pad -have looked on the control but it is not obvious where to find the on/off option for this. Hope someone can help please.

  • How do I do multicam editing in final cut pro 10.2?

    I updated to FCP 10.2 and when I right click on my videos that I want to use for multicam editing it shows nothing

  • Object name completion

    In ACE documentation, it talks about one feature referred as Object name completion, does anyone know what it is?

  • Outlook Tasks Only Does Not Sync

    I can get everything to sync to my Outlook 2007 except my Tasks. I don't receive much help on it, only message in the Log is Outlook Tasks synchronization failed. Any help would be greatly appreciated. Nothing tells me why it failed.  Thanks! Post re

  • Browser Viewing  / Testing?

    I must be mad , I'm a newbe but have some background .... great software ... problem I can make all the pages fine ,,,test them all indivigully they all show up 100% by themself in the browser ... but when I link the pages from the index page and the