Assigning field value to Field symbol

Dear Experts,
I have one program which works fine in non unicode system.. The program contains Assign statement with offset and length..
This program dumps in Unicode system due to this instruction.. The field which i want to assign to field symbol is type P field..
Is there any ways to avoid the dump?
Thank you in Advance..

Hi,
isn't it an ABAP question in an EP forum?
Romano

Similar Messages

  • Missing class for indicator field value [changed-fields-locking-policy]

    -------<br>
    Edit:<br>
    Please, ignore the post below. I found the problem here. The real problem is reported in my other post.<br>
    -------<br>
    <br>
    Hello,<br>
    <br>
    In order to test the optimistic locking by fields, I created a very simple TopLink project via the TopLink Workbench. It only consists of one table that was mapped via TopLink's own "Add or Update Existing Tables from Database". I made no modifications to the automatically generated mappings.<br>
    <br>
    After I set up the rest of the project, I ran it and it ran okay.<br>
    <br>
    Then I went to the table descriptor, then to the "Locking" tab, and then I selected "Optimistic Locking" -> "By Fields" -> "Changed Fields".<br>
    <br>
    That was ALL I changed.<br>
    <br>
    And when I tried to run the project this time, I got the following exception:
    <blockquote>
    Exception [TOPLINK-43] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DescriptorException
    Exception Description: Missing class for indicator field value [toplink:changed-fields-locking-policy] of type [class java.lang.String].<br>
    Descriptor: XMLDescriptor(oracle.toplink.descriptors.VersionLockingPolicy --> [DatabaseTable(locking-policy)])<br>
         at oracle.toplink.exceptions.DescriptorException.missingClassForIndicatorFieldValue(DescriptorException.java:878)<br>
         at oracle.toplink.internal.ox.QNameInheritancePolicy.classFromRow(QNameInheritancePolicy.java:109)<br>
         at oracle.toplink.mappings.foundation.AbstractCompositeObjectMapping.valueFromRow(AbstractCompositeObjectMapping.java:150)<br>
         at oracle.toplink.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1012)<br>
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:241)<br>
         at oracle.toplink.internal.ox.XMLObjectBuilder.buildObject(XMLObjectBuilder.java:128)<br>
         at oracle.toplink.ox.mappings.XMLCompositeCollectionMapping.buildCompositeObject(XMLCompositeCollectionMapping.java:157)<br>
         at oracle.toplink.mappings.foundation.AbstractCompositeCollectionMapping.valueFromRow(AbstractCompositeCollectionMapping.java:735)<br>
         at oracle.toplink.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1012)<br>
         at oracle.toplink.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:241)<br>
         at oracle.toplink.internal.ox.XMLObjectBuilder.buildObject(XMLObjectBuilder.java:128)<br>
         at oracle.toplink.internal.ox.record.DOMUnmarshaller.xmlToObject(DOMUnmarshaller.java:284)<br>
         at oracle.toplink.internal.ox.record.DOMUnmarshaller.xmlToObject(DOMUnmarshaller.java:265)<br>
         at oracle.toplink.internal.ox.record.DOMUnmarshaller.unmarshal(DOMUnmarshaller.java:152)<br>
         at oracle.toplink.ox.XMLUnmarshaller.unmarshal(XMLUnmarshaller.java:339)<br>
         at oracle.toplink.tools.workbench.XMLProjectReader.read(XMLProjectReader.java:162)<br>
         at oracle.toplink.tools.workbench.XMLProjectReader.read(XMLProjectReader.java:209)<br>
         at oracle.toplink.tools.sessionconfiguration.TopLinkSessionsFactory.loadProjectConfig(TopLinkSessionsFactory.java:307)<br>
         at oracle.toplink.tools.sessionconfiguration.TopLinkSessionsFactory.createSession(TopLinkSessionsFactory.java:241)<br>
         at oracle.toplink.tools.sessionconfiguration.TopLinkSessionsFactory.buildServerSessionConfig(TopLinkSessionsFactory.java:215)<br>
         at oracle.toplink.tools.sessionconfiguration.TopLinkSessionsFactory.buildSession(TopLinkSessionsFactory.java:168)<br>
         at oracle.toplink.tools.sessionconfiguration.TopLinkSessionsFactory.buildTopLinkSessions(TopLinkSessionsFactory.java:124)<br>
         at oracle.toplink.tools.sessionconfiguration.XMLSessionConfigLoader.load(XMLSessionConfigLoader.java:103)
    </blockquote>
    Can anybody tell me what that means? And why do I see "VersionLockingPolicy" in the stack trace? I explicitly specified locking "By Fields".<br>
    <br>
    Here's a fragment from the project XML file:
    <blockquote>
    <toplink:locking xsi:type="toplink:changed-fields-locking-policy"/>
    </blockquote>
    Is this a TopLink bug or am I doing something wrong? (By the way, if I choose optimistic locking by "All fields", it works. But locking by "Changed fields" doesn't.)<br>
    <br>
    Best regards,<br>
    Bisser
    Message was edited by:
    bisser

    Ooooops, sorry, guys!
    I was using TopLink 10.1.3.0 JARs to run a project created via TopLink 10.1.3.1 Workbench. That was the reason for the exception.
    I ran across the REAL problem, however. The one that was occurring when I created the TopLink project via JDeveloper 10.1.3.1 and ran it via JDeveloper 10.1.3.1. That's why I decided to try with TopLink 10.1.3.1 Workbench instead of JDeveloper 10.1.3.1.
    I will report the problem in a clean separate post.

  • To Modify a field value with field symbols

    we had a requirement like we are getting in a floating point value in a field of an IDoc segment like 12.327- .Here if we see that the negative sign is after the floating point value and if we try to insert this into a database then it will throw out an error.Before inserting the value we need to covert the incoming value in the form -12.327.
    I used the field symbols inorder to get the values and to change them.
    But iam not able to modify the internal table from the new value.
    Here is my sample code.
    DATA: IT_MBEW TYPE TABLE OF MBEW,
          WA_MBEW TYPE MBEW,
          IT_DFIES TYPE TABLE OF DFIES,
          WA_DFIES TYPE DFIES,
          IT_DD03L TYPE TABLE OF DD03L,
          WA_DD03L TYPE DD03L,
          L_FIELD TYPE VALUE,
          WA_VALUE TYPE mbew,
          L_MBEW TYPE DDOBJNAME VALUE 'MBEW'.
    FIELD-SYMBOLS: <FS1> TYPE ANY.
    FIELD-SYMBOLS: <FS3> TYPE ANY.
    FIELD-SYMBOLS: <FS2> TYPE ANY.
    SELECT * INTO CORRESPONDING FIELDS OF TABLE IT_MBEW
      FROM MBEW  WHERE MATNR = '000000000000100110'.
    LOOP AT IT_MBEW INTO WA_MBEW.
      WA_MBEW-SALK3 = - 354471.
      MODIFY IT_MBEW FROM WA_MBEW.
    ENDLOOP.
    To call the FM inorder to get the fieldnames for MBEW table
    CALL FUNCTION 'DDIF_FIELDINFO_GET'
      EXPORTING
        TABNAME              = L_MBEW
        FIELDNAME            = ' '
       LANGU                = SY-LANGU
        LFIELDNAME           = ' '
       ALL_TYPES            = ' '
        GROUP_NAMES          = ' '
        UCLEN                =
      IMPORTING
        X030L_WA             =
        DDOBJTYPE            =
        DFIES_WA             =
        LINES_DESCR          =
    TABLES
       DFIES_TAB            = IT_DFIES
        FIXED_VALUES         =
    EXCEPTIONS
       NOT_FOUND            = 1
       INTERNAL_ERROR       = 2
       OTHERS               = 3
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    SELECT TABNAME FIELDNAME DATATYPE POSITION INTO CORRESPONDING FIELDS OF TABLE
             IT_DD03L FROM DD03L
             WHERE TABNAME = 'MBEW'
             AND   DATATYPE = 'CURR'
             ORDER BY POSITION ASCENDING.
    *LOOP AT IT_MBEW INTO WA_MBEW.
    LOOP AT IT_MBEW assigning <fs1>.
    ASSIGN WA_MBEW TO <FS1>.
    do.
      LOOP AT IT_DD03L INTO WA_DD03L.
        READ TABLE IT_DFIES INTO WA_DFIES WITH  KEY FIELDNAME = WA_DD03L-FIELDNAME
                                          DATATYPE = WA_DD03L-DATATYPE.
        IF SY-SUBRC = 0.
          ASSIGN WA_DFIES-FIELDNAME TO <FS2>.
          ASSIGN COMPONENT SY-TABIX OF STRUCTURE <FS1> TO <FS3>.
          MOVE <FS3> TO L_FIELD.
          CONDENSE L_FIELD.
          CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT'
            CHANGING
              VALUE = L_FIELD.
          IF SY-SUBRC = 0.
            ASSIGN L_FIELD TO <FS3>.
                    MODIFY ITMBEW INDEX SY-TABIX FROM <FS3>._    
    ENDIF.
        ENDIF.
      ENDLOOP.
    *enddo.
    ENDLOOP.
    The Modify statement is not working.....Plesae help me in this regard.
    Thanks
    Srinivas

    Hello.
    When you write,
    LOOP AT it_mbew ASSIGNING <fs1>.
    ENDLOOP.
    you don't need to use statements:
    ASSIGN WA_MBEW TO <FS1>
    nor
    MODIFY it_mbew
    after that.
    If you just write:
    LOOP AT it_mbew ASSIGNING <fs1>.
      <fs1>-field1 = 'A'.
      <fs1>-field2 = 'B'.
    ENDLOOP.
    all records of it_mbew will have field1 = 'A' and field2 = 'B'.
    The point is, statement LOOP assigning <fs1> will make the field symbol to became a pointer to the records of the internal table. So, if you change the field symbol, you are changing the internal table already.
    Regards.
    Valter Oliveira.

  • Changing screen feild values through field symbols

    hi
    I am working on SAPMF02D user exit, it requires validation of searchterm1 feild, I have successfully completed this part with the help of field symbols, but the problem i am facing is that, after performing validation checks, searchterm1 feild would be updated, this I am not able to do, so far I have done the following:
    DATA: fld(30) VALUE '(SAPLSZA1)ADDR1_DATA-SORT1'.
    FIELD-SYMBOLS: <f1> TYPE ANY .
    * Assign screen field values to field symbol
    ASSIGN (fld) TO <f1>.
    * get the value from field symbol into our field
    IF <f1> IS ASSIGNED.
      acc1 = <f1>.
    ENDIF.
    .. *Perform validation and updation on 'acc1'
    * get the updated values back into screen feild
    <f1> = acc1.
    now this last thing is not working for me,, and the data does not get updated in screen/database....
    I have tried using ' comit work' statement , but no use,
    I require help on this issue and its quite urgent.
    Thank you all for your time.

    Thank you again for the reply,
    I am sorry , I am not able to use to that FM either,, I just cannot understand the parameters it is taking and how to provide them.
    I have already used the FM "DYNP_UPDATE_FIELDS"  and "DYNP_UPDATE_FIELDS" , as:
    <f1> = acc1.
    scrfields-fieldname = 'ADDR1_DATA-SORT1'.
    scrfields-fieldvalue = <f1>.
    APPEND scrfields.
    CALL FUNCTION 'DYNP_VALUES_UPDATE'
      EXPORTING
        dyname                     = 'SAPLSZA1'
        dynumb                     = '0301'
      TABLES
        dynpfields                 = scrfields[]
    * EXCEPTIONS
    *   INVALID_ABAPWORKAREA       = 1
    *   INVALID_DYNPROFIELD        = 2
    *   INVALID_DYNPRONAME         = 3
    *   INVALID_DYNPRONUMMER       = 4
    *   INVALID_REQUEST            = 5
    *   NO_FIELDDESCRIPTION        = 6
    *   UNDEFIND_ERROR             = 7
    *   OTHERS                     = 8
    IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    but it did not helped my cause either..
    Any help would be highly appreciated,
    thank you

  • Problem in assigning date valje to field

    Hi,
    I have  a problem in assignning date value to field.
    i am retriving date from a table and assigning it to a field which is date type in the form.. but it is not reflecting..
    Error: form Bad Value..
    how to assign the date values in the form..
    Mahi

    Hi mahendra,
    I think the Bad Value Error Occurs only if the databound datasource in the form must have different data type...
    oForm.DataSources.UserDataSources.Add("eDate", SAPbouiCOM.BoDataType.dt_DATE, 10);
      SAPbouiCOM.EditText oEdit;
      oEdit = oForm.Items.Item("1").Specific;
      oEdit.DataBind.SetBound(true, "", eDate);
    with Regards,
    MadhuSudhana Rao.G

  • One field value missing in the spreadsheeet

    Hi All,
    I have created an ALV grid report, which displays proper output. All the headers and their field value are displayed properly in the ALV output.
    But when I select the option to download the output to the spreadsheet format by using the following option, it displays all the headers and their field value, except field value for only one column.
    Save List in file --> Local file --> Spreadsheet.
    Can some body please let me know what could me the problem?
    Regards,
    Reshma

    Hi Reshma,
    I hope the column is not added dynamically. I had faced this problem for dynamic columns.
    Also, you could try and download the internal table data using 'GUI_DOWNLOAD' just to cross check that you face the smae issue.
    Regards,
    Shyam

  • Assign fixed values through CMOD

    Hello all,
    I have been asked to make an enhancemet to assing fixed values to a field, so there would be a drop down after wards. Is this posible through CMOD? I know i can do it through se11 and fix the domain, but not sure if it is the correct process.
    Thanks.

    Hi,
    Enhancement(SMOD,CMOD) or BADI (SE18,SE19) are just predefined user exit for customer to implement their specific logic in the specific application/component .
    So your question is depending on whether there is a prefined user exit for that field. In my opinion, enhancement for assigning fiexed values to field mostly don't have predefined user exit.
    But you can achieve it with it's search help exit instead, do as below:
    1. If  a search help already been attached to that field, just implement search help exit via se11(choose search help and change)
    Hope helps,
    Chen Jian

  • Assigning a value to a field-symbol (workarea of type any)

    Dear forumers,
    I'm having a bit of difficulty in assigning a value to a field-symbol (it should be treated as a workarea of type any), but I'm given a syntax error instead:-
    The data object "<LFS_WORKAREA>" has no structure and therefore no component called "LFMON".
    What could have gone wrong and how may I resolve this (I must have missed something out)? I will still need <LFS_WORKAREA> to be defined as TYPE ANY.
    Please help. I'd appreciate any inputs at all. Thanks.
    *&      Form  FORMAT_POST_PERIOD
    *       Subroutine to format the posting period data
    *      --> PI_MBEW     Material valuation data (internal table)
    FORM format_post_period  CHANGING    pi_mbew TYPE ANY TABLE.
    " Create local field symbols
      FIELD-SYMBOLS:
      <lfs_workarea> TYPE ANY,
      <lfs_lfmon>    TYPE ckmlcr-poper.
    " Create local variables
      DATA: lv_index TYPE sy-tabix.
      DATA: lv_lfmon TYPE ckmlcr-poper.
    " Format posting periods
      LOOP AT pi_mbew ASSIGNING <lfs_workarea>.
        lv_index = sy-tabix.
        ASSIGN COMPONENT 'LFMON' OF STRUCTURE <lfs_workarea> TO <lfs_lfmon>.
        PERFORM convert_lfmon USING    <lfs_lfmon>
                              CHANGING lv_lfmon.
        MOVE lv_lfmon TO <lfs_workarea>-lfmon.   " the syntax error occurs here  :(
        MODIFY pi_mbew FROM <lfs_workarea>
          INDEX lv_index
          TRANSPORTING lfmon.
        CLEAR: <lfs_workarea>,
               <lfs_lfmon>
               lv_lfmon,
               lv_index.
      ENDLOOP.
    ENDFORM.                    " FORMAT_POST_PERIOD

    Most of us aren't in it for the points in any case...
    For your solution you've redundant code:
    *&      Form  FORMAT_POST_PERIOD
    *       Subroutine to format the posting period data
    *      --> PI_MBEW     Material valuation data (internal table)
    FORM format_post_period  CHANGING    pi_mbew TYPE ANY TABLE.
      FIELD-SYMBOLS:
      <lfs_workarea> TYPE ANY,
      <lfs_lfmon>    TYPE ckmlcr-poper.
      DATA: lv_lfmon TYPE ckmlcr-poper.
    *  DATA: lo_workarea TYPE REF TO data.   "<--Not needed, because the LOOP AT ASSIGNING below does the work
    *  CREATE DATA lo_workarea LIKE LINE OF pi_mbew.
    *  ASSIGN lo_workarea->* TO <lfs_workarea>.
      LOOP AT pi_mbew ASSIGNING <lfs_workarea>.
        ASSIGN COMPONENT 'LFMON' OF STRUCTURE <lfs_workarea> TO <lfs_lfmon>.
        PERFORM convert_lfmon USING    <lfs_lfmon>
                              CHANGING lv_lfmon.
        <lfs_lfmon> = lv_lfmon.
        CLEAR lv_lfmon.
      ENDLOOP.
    ENDFORM.                    " FORMAT_POST_PERIOD
    Here's a couple of more efficient solutions, using LOOP AT INTO.
    FORM format_post_period  CHANGING    pi_mbew TYPE INDEX TABLE. " <-- Table type a little more specific
                                                                   "<--now you can use index operations
      FIELD-SYMBOLS:
      <lfs_workarea> TYPE ANY,
      <lfs_lfmon>    TYPE ckmlcr-poper.
      DATA: lv_lfmon TYPE ckmlcr-poper,
            lv_index TYPE sytabix.
      DATA: lo_workarea TYPE REF TO data.
      CREATE DATA lo_workarea LIKE LINE OF pi_mbew.
      ASSIGN lo_workarea->* TO <lfs_workarea>.
    ASSIGN COMPONENT 'LFMON' OF STRUCTURE <lfs_workarea> TO <lfs_lfmon>.
      LOOP AT pi_mbew INTO <lfs_workarea>.
        lv_index = sy-tabix.    
        PERFORM convert_lfmon USING    <lfs_lfmon>
                              CHANGING lv_lfmon.
        <lfs_lfmon> = lv_lfmon.
        MODIFY pi_mbew FROM <lfs_workarea>
           INDEX lv_index. " <--INDEX TABLE, so this is permitted.
        CLEAR lv_lfmon.
      ENDLOOP.
    ENDFORM.                    " FORMAT_POST_PERIOD

  • Assigning value to Field - Symbol ( which is type of internal table field )

    Hi All,
      I am facing problem to assign the value to a field symbol. My requirement is creating a dynamic internal table and populate values into that internal table, so that i can display the values .
      I am having a structure with fields like status , Plant1 name , Plant2 name.....Plant n .
      So i declared an internal table it_tab with this structure.
      I am having one more table which having number of records for Plant1 ,Plant 2 ,....Plant n based on some condition.
      I need to count the number of records for Plant1 and i need to put in the internal table it_tab.
      For this i created field-symbol .
    Here, t_deployment table will have the plants 1,2,3...and
         t_devobject will have some records for these plants.
    LOOP AT T_DEPLOYMENT. 
    clear w_count.
    LOOP AT T_DEVOBJECT WHERE ZDEPLOYMENT = T_DEPLOYMENT-DOMVALUE_L AND
                              ZADSTATUS = '10'.
    w_count = w_count + 1.
    ENDLOOP.
    concatenate 'it_tab-' t_deployment-domvalue_l into var_bet_name.
    assign var_bet_name to <bet_var_name>.
    now my internal table field i.e. it_tab-plant1 came into <bet_var_name> . But i want to assign a value for it.
    at last what i need is it_tab-plant1 = w_count.
    whaterver the w_count has value that needs to assign to it_tab-plant1. But i don't want to assign directly it it_tab-plant1. I want to assign dynamically. Because tommorrow some more plants added to t_deployments , i don't want to make changes to my program. It should take care....w/o changing the program.
    I tried the following statement.
    (<bet_var_name>) = w_count. But its not working.
    Please let me know how i can get this.
    Thanks in Advance.
    Pavan.

    Hi pavan,
    As ur requirement is creating a dynamic internal table,
    try the following way,
    remember the fieldcat should be of type LVC not SLIS.
    BUILD LT_LVCFIELDCAT in a way that, the value from the internal table becomes the fieldname
    ex:-
    loop at it_models INTO WA_MODELS.
        LS_LVCFIELDCAT-FIELDNAME = WA_models-MODEL.
        LS_LVCFIELDCAT-SELTEXT = WA_models-MODEL.
    append ls_lvcfieldcat to lt_lvcfieldcat.
    endloop.
    DATA: DREF TYPE REF TO DATA,WA_REF TYPE REF TO DATA.
    FIELD-SYMBOLS: <TEMP_TAB> TYPE TABLE, <TEMP_WA> TYPE ANY.
    CALL METHOD CL_ALV_TABLE_CREATE=>CREATE_DYNAMIC_TABLE
        EXPORTING
          IT_FIELDCATALOG = LT_LVCFIELDCAT
        IMPORTING
          EP_TABLE        = DREF.
      ASSIGN dref->*  TO <TEMP_TAB>.
    now basing on the fieldcatalog <temp_tab> is build.
    NOW FILL <TEMP_TAB>.
    WHILE FILLING, ASSIGN COMPONENT IDX/NAME.....
    this statement will be very usefull.
    i hope this will be help full.
    pls reward the points if it helps u.
    regards
    Hyma

  • Error in assigning *VBAP to a field-symbol...

    Hello Experts,
    I am currently writing my code in a given user-exit in VA01. My problem is,
    I want to assign the value '*VBAP' to a given field-symbol which has a type of
    ANY. The problem is, it says that the value must be a C,N. etc.
    Hope you can help me guys. Thank you and take care!

    can you please paste the piece of code here ...

  • Assign Type conflict with field symbols

    I have two tables tab1 & tab2, want to assign field values from tab1 to tab2 suing field symbols. Deatils are :
    TYPES: BEGIN OF ty_tab1,
        item1   TYPE char20,
        item2   TYPE char20,
        val1 type i,
        val2 type i,
    END OF ty_tab1,
    BEGIN OF ty_tab2,
        item1 TYPE char20,
        item2 TYPE char20,
    END OF ty_tab2.
    DATA: it_tab1 TYPE TABLE OF ty_tab1,
                it_tab2 TYPE TABLE OF ty_tab2.
      FIELD-SYMBOLS <fs_tab1> TYPE ty_tab1.
                     <fs_tab2t> type ty_tab2.
      LOOP AT it_tab1 assigning <fs_tab1>.
        READ TABLE it_tab2  assigning <fs_tab2> WITH KEY item1 = <fs_tab1>-item1
                                                                                    item2 = <fs_tab1>-item2.
        IF sy-subrc EQ 0.
          ASSIGN COMPONENT 'ITEM1' OF STRUCTURE <fs_tab1> TO <fs_tab2>.
         ASSIGN COMPONENT 'ITEM2' OF STRUCTURE <fs_tab1> TO <fs_tab2>.
        endif.
    endloop.
    Getting error msg
    You attempted to assign a field to a typed field symbol, but the field does not have the required type.         
    whats the reason of error.
    Edited by: Matt on May 27, 2011 8:59 AM - added  tags

    Taken from example dump
    A new value is to be assigned to the field "...", although this field is
    entirely or partly protected against changes.
    The following are protected against changes:
    - Character literals or numeric literals
    - Constants (CONSTANTS)
    - Parameters of the category IMPORTING REFERENCE for functions and
    methods
    - Untyped field symbols not yet assigned a field using ASSIGN
    - TABLES parameters if the actual parameter is protected against changes
    - USING reference parameters and CHANGING parameters for FORMs, if the
    actual parameter is protected against changes and
    - Accesses using field symbols if the field assigned using ASSIGN is
    protected (or partially protected, e.g. key components of an internal
    table with the type SORTED or HASHED TABLE) against changes
    - Accesses using references, if the field bound to the reference is
    protected (or partially protected) against changes
    - External write accesses to READ-ONLY attributes,
    - Content of a shared object area instance accessed using a shared lock
    (ATTACH_FOR_READ).
    You likely fall in one of these cases. Check each and if still unsure please share your code so we can reproduce the error.
    Regards
    Marcin

  • How to access the value of a field of a field symbol.

    Hello All,
    i need to access the value of a field in a field symbol. But when i am trying to get the value like <FS>-POSNR, it's showing that that the <FS> has no structure.
    In my program, the field itself that i need to check should be dynamic. ie i'll get the field in a variable and i need to find the value of that field.
    Am pasting my code below, please tell me what needs to be done.
    here in my sample code i am moving the entry of the <FS> into a work area structure. But in my actual program, i gets the structure as a parameter. So is there any way i can declare a work area dynamically...
    FUNCTION z_39181_dyn_fs_60758.
    ""Local interface:
    *"  IMPORTING
    *"     REFERENCE(PARAMETER) TYPE  VBELN
    *"  TABLES
    *"      DATA_TAB
      BREAK-POINT.
      FIELD-SYMBOLS <fs> TYPE ANY.
      FIELD-SYMBOLS <fs1> TYPE ANY.
      FIELD-SYMBOLS <fstab> TYPE ANY TABLE.
      DATA name(5) VALUE 'POSNR'.
      FIELD-SYMBOLS <f> TYPE ANY.
      DATA: dref TYPE REF TO data,
            dref1 TYPE REF TO data,
            dref2 TYPE REF TO data.
      DATA: lv_lips TYPE string.
      DATA: lv_lipsfld TYPE string,
                lv_fld TYPE string,
                lw_lips TYPE lips.
                lv_lips = 'LIPS'.
                lv_fld = 'LW_lips-POSNR'.
      CREATE DATA dref1 TYPE (lv_lips).
      CREATE DATA dref TYPE STANDARD TABLE OF (lv_lips).
      CREATE DATA dref2 LIKE LINE OF data_tab.
      ASSIGN dref->* TO <fstab>.
      ASSIGN dref1->* TO <fs>.
    assign dref2->* to <fs
      <fstab> = data_tab[].
      LOOP AT <fstab> INTO <fs>.
        lw_lips = <fs>.
        WRITE lw_lips-vbeln.
        ASSIGN (lv_fld) TO <fs1>.
       write <fs>
      ENDLOOP.
    Helpful answers will be rewarded...

    Use syntax
    ASSIGN COMPONENT name OF STRUCTURE struc TO <fs>.

  • How to dynamically assign type to a field-symbol?

    Hi,
    I have two fields in one table, one for field name and one for table name.  These can be fields in different
    tables. I need to fetch value of this field in that table. So the type of this variable can change dynamically.
    I am trying to assign type of this field dynamically to a field-symbol. I have to use this field symbol in a
    select statement.  Currently it is showing a dumb, as the field type is dec7.  For some other types it is
    working fine.
    Regards,
    Sunil

    Hi all,
    I have the same problem.
    I tried with your helps but i can't fix them.
    A message is raised "Field <fs_bet> unknown" when i used code below
    FIELD-SYMBOLS: <fs_bet> TYPE any.
    DATA: c_bet TYPE string.
    DATA it_0008 type STANDARD TABLE OF pa0008 WITH HEADER LINE.
    DO 40 TIMES.
      CONCATENATE 'BET0' index into c_bet.
      ASSIGN (c_bet) to <fs_bet> CASTING TYPE pad_amt7s  .
      select * from pa0008 into it_0008
         where <fs_bet> = '1000'
         and pernr = 32.
         append it_0008.
      ENDSELECT.
    ENDDO.
    Please help me to solve it.
    Thanks so much,
    Sophie Tran

  • Assign a value from dropdownlist to input field value on BSP page

    Hi,
    I'm new to SAP and ABAP. We have a CRM project in which I have to maintain BSP pages.
    Now, coming to my problem: I have a input field with
    value = "//BTAdminH/HeaderInfo"
    This field is normally maintainable. The required function is now to set this field as not maintainable/readonly. Then, the value should be set automatically to an value, which will be selected from a dropdownListBox. After saving, the value HeaderInfo should have the same value like the selected value from the dropdownListBox.
    How can I now set the field as readonly (this should be the easier part) and
    how can I set the value for the HeaderInfo to the value of the selected value from the dropdownListBox?
    If I set it directly like this
    value = "//BTActivity/Priority"
    it is shown on the BSP page correclty, but it is not saved as HeaderInfo.
    Please help me.
    Enja

    Hello Gokul,
    test was only for test purposes! I am using as a separator the plus sign!
    But this is not the problem!
    In debugging, the local variable has the concatenated value! So, this is working!
    oncatenate ls_ddlb1-value ls_ddlb2-value ls_ddlb3-value into lv_headerinfo SEPARATED BY ' + '.
    But when I assign the value of my set_headerinfo to the local variable, then it is returning only the separator sign!!!
    if BTAdminH->GET_HEADERINFO( 'HEADERINFO' ) is initial.
        BTAdminH->SET_HEADERINFO( attribute_path = 'HEADERINFO' value = lv_headerinfo ).
      endif.
    If I declare the local variable as one of the dropdown values, then it is getting populated also for set_headerinfo
    lv_headerinfo  =ls_ddlb1-value.
    So, the assigning is also working! But it is not working, when the local variable equals more than one value! I hope that I could explained it in the right way for you!!!!
    So. why is the value for set_headerinfo not the same as the one for the local variable! The local variable has the correct value after the concatination.
    Regards
    Enja

  • How to assign the Value to the Particular field-Text field

    Hi all,
    My requirement is to call the Web service with input from the ADF page.
    Steps I have done:
    1. I have created a Web service data control based on the WSDL file.
    2. Just drag and drop the Process, It is automatically created the form with the Input fields and then the Process button
    3. When I entered the values and then process button it will pass the values corretly.the web service is invoked correctly with the values entered.
    4. But when I try to assign the value from the some other field that is not working.
    I am assigning the Value to the field by go to the properties of the Particular field value =”CREATE”
    When I do like this that value is showing in the screen. But it will not pass the value to the web service.
    I think the value is only displaying in the screen. Not stored at bindings level. Kindly guide me in this.
    Thanks in Advance
    C.Karukkuvel

    If you want to have the value that is returned displayed in a field that has binding to another item and not the WS result item then the way to do this would be to override the method that is invoked with the button that calls the web service - you then take the result and assign it to the item you want.
    See the way it is done here:
    http://blogs.oracle.com/shay/2009/07/java_class_data_control_and_ad.html
    While this sample uses a simple method it would be basically the same for a Web service.

Maybe you are looking for