Reg DYNP_VALUES_UPDATE.

Hi all,
      Does the FM DYNP_VALUES_UPDATE work only with the same screen?My requirement is to update the field values of a main screen according to the value selected from a drop-down in a subscreen.I am able to update values of the same subscreen using this FM but not other screens.Can anyone tell me whether it will work.
Thanks in advance,
  Anjaly

Dear Anjaly,
    I think it should work.But if it is not then u can use another method.
  eg : ur main Program is ZMAIN_PGROGRAM.
       And the field u want to update is MYFIELD.
       MY_VALUE is the value u need to assign to MYFIELD. 
so u can use .
  DATA : FLD_NAME(60).
  FIELD-SYMBOLS : <FS> TYPE ANY.
  FLD_NAME = '(ZMAIN_PGROGRAM)MYFIELD' .
  ASSIGN (FLD_NAME) TO <FS>.
  IF SY-SYBRC EQ 0.
    <FS> = MY_VALUE.
  ENDIF.

Similar Messages

  • Using DYNP_VALUES_UPDATE with a Maintenance View

    Hi,
    I am using a maintenance view to insert values into a table. When user creates a new entry, based on the value provided for a field,I need to fill a read-only field. In PAI, when user enters a value for one field, I am using FM 'DYNP_GET_STEPL' to  get the current line and then DYNP_VALUES_UPDATE to fill the contents to the read-only field. But this does not seem to work. Any idea?
    Regards
    Rachana

    Hi Tamas,
    I tried both the options suggested by you.
    I am updating the underlying structure, still its not visible when the screen loads again. But if you see the same field gets filled with DYNP_VALUES_UPDATE if an F4 help is used for teh first(editable) field and then my read-only field is also filled in the PROCESS ON VALUE REQUEST module.
    So my guess is that, since it is a table control, it loops through the rest of the table control which is empty and my underlying structure gets cleared. So the problem could be where I am actually filling the field.
    Is it possible to somehow fill the <EXTRACT> table so that teh value is not lost?
    Regards
    Rachana

  • Mail can't send email from 123-reg accounts

    Hi all,
    I've got an issue with Mac Mail can’t send email from 123-reg accounts.
    I know there is a lot of articles on simular matters and some I have tried out with no luck, others are just speaking a whole other language.
    Any help would be greatly recived, here's my situation below:
    Running a iMac 2.8GHz Intel Core i5 on OS X 10.8.3
    I’m using 3 accounts on Macs Mail client, one is my iCloud account that is working fine and the other two are my 123-reg accounts that I use for business purposes. I’ve been working like this for a couple of years now and about 6 months ago I upgrade my operating system from Snow Leopard to Mountain Lion.
    2 or 3 months ago I randomly got a problem where I was unable to send any emails from my 123-reg account, I could only receive emails. I checked my settings and they were all correct and unchanged so I attempted to delete them and recreate the account but with no such luck.
    I then decided to check if it was a problem at 123-regs end and attempted to log into web mail. This worked and was able to both send and receive emails so eliminated that possibility.
    I also have these accounts set up on my iPhone, so checked if there was any issues and everything was working fine. I then checked my iphone details and made sure the same was on my desktop and still no such luck.
    I’ve tried out some of the articles I’ve found on here (the ones written in plain English) still no results. I’m not very IT illiterate and just wondered if anyone else has got any ideas, whether there is something specific with 123-reg accounts and Mac Mail?
    Many thanks.

    Thanks
    I just had another hunt around looking at posts and discovered that it was because I recently changed to BT Infinity and they had a block on.
    I didn't even think to question the ISP.
    https://discussions.apple.com/message/21173608#21173608

  • Reg: Message and BPM

    Hi
    I'm having a scenario where i use a JDBC adapter to extract data from a DB. As a result of the query say, 10 rows are returned as message to XI server. I have a transformation (BPM) set and the receiver(target system) is a file. When i open the file to see its contents i can see only the first record been transfered. The mapping part used for the transformation node is having IF condition. But all the fetched records satisfies the conditions in the mapping.
    Pls let me know the corrective step.
    reg: Prabhu

    Hi,
    1)Check the input XML i.e all 10 records are coming into XI . This you can check in SXMB_MONI
    2) Then you can test the mapping in the integration Reposiotry .. So now you can get if any mapping problem. For this , check is the occurence of target strcuture is 1..n or 0.n
    /people/michal.krawczyk2/blog/2005/09/16/xi-how-to-test-your-mapping-in-real-life-scenarios
    3) If mapping is correct , then check the RWB->Message Monitoring->Message Display Tool and check the payload.
    4) If this is correct, then check the File COntent Conversion of the Receiver File Adapter.
    Hope this helps,
    Regards,
    Moorthy

  • Reg: How to Stop Polling of JDBC Adapter without Scheduling the adapter

    Dear Gurus,
    Here I am having one requirement. My clients wants to send data from JDBC adapter (ORcale System table) to R3 system via RFC.
    His Requirement::
    1. He is not telling the time of data flow from Oracle server so that based on that we can schedule the adapter in the Communication Channel monitoring (Availablitiy Time Planning) or Else we can Schedule by deciding the setting of the polling interval time.
    2. He is telling that When ever he waants to send the data he will place one dummy file in the File Adapter FTP location so that it will became an Indication for u to poll the jdbc adapter and to transfer the data to R3.
    3. Untill he keeps the file or gives indication he doesn;t want to communicate with Oracle server due to some security and it s a most important data base he doesn't want to disturb that Oracle Server as so many business are running  on that.....
    We Proposed::
    1. Atleast you need to tell the scheduling time or poll interval time so that we can schedule our adapter.
    but he s not accepting for this
    2. Atleast U need to give access for Data base to enter one more extra field like STATUS CODE so that we will add one number and we keep on Update in the Update table and based on that Update table statement it will poll.
    but he s not even accepting for this
    3. Finally we prposed that to create another table in the Oracle SYstem as Dulplicate Table which is similar to Standard Orginal table when ever he wants to pick the data please keep that data in this Duplicate TABle so that JDBC adapter will pick the data from thsi TABLE instead of picking the data from that standard table so that it will not effect any standard table data in the table.
    but he s not even accepting for this
    We have done some R & D:::
    1. WE approached even through BPM and via switch conditions is one scenario
       FILE RECEIVE >SWITCH CONDITION> RECEIVE AND SEND or else EXIT
    2. Using correlation in anotehr scenario means correlating File adapter and JDBC and based on one dynamica value it will goes to SEND STEP ( RECE IVE --> RECEIVE --> SEND STEPS )
    Even though we know this...concept that...we jsut tried::
    In BPM we can control the flow in XI 3.0 but we cannot Stop the Polling of JDBC adapter at backend because one the data comes from FILE adapter it will keep on HOLD untill it receives the JDBC from Oracle then based on the condition or Correlation it will goes futher SEND step means after that file adapter is picking file or not ...what ever it may be JDBC will polls at backend and brings that data to BPM"
    Hence sugest me How to Stop Polling of JDBC Adapter without Scheduling the adapter or else using STATUS CODE Update statements in JDBC Tables 
    Regards:
    Amar Srinivas Eli

    Hi! All,
    Finally I decided to do the scenario in two steps:
    1: FILE REQ --> JDBC REQ -->JDBC RES --> FILE RECV
    2: FILE RECV --> RFC
    But I am getting issue while doing first scenario
    Desgn :
    I have created 2 Synchronous interfaces :
    1) FILE 2 JDBC REQ
    In this a) out put message is FILE  Req
              b) Input msage:; FILE RES
    2} JDBC2FILE RECV
            a) Output mesage;; JDBC REQ
            b) Input Msge :: JDBC Response
    Mappings:
    1) File REQ-->JDBC REQ
    2) JDBC RES-->FILE RES
    Interface mappings:
    1: FILE 2 JDBC REQ--> JDBC 2 FLE RECV
    CONFIGURATION ::
    1: One Seder File CC
    2: Two reciever CC's one is for JDBC RECEIVER and other s FILE RECEIVER
    3; One Sender Agreement
    4: 2 Recver agreements
    5: One Interface Determination and
    6: One RECCV Determination
    My Question;;
    1. First let confirm whether my development steps are right or not ?
    2: Another thing s I am not sure reg Configuration Steps means
    whetehr one interface determination and one Receiver Determinations are required or not as these are synchronous Interfaces
    3: main Issue is::::
    If my scenario s FILE2RFC2FILE then I will get RFC response automatically but here issue is this is JDBC
    My reqquirement is By sending one Field from fILE to JDBC REQ it needs to send entire TAbLE records as a Response to file as XML
    without having Sender JDBC how can I send the JDBC Res to FILE and If that is the case then again JDBC adapter is polling which is contradict to the client requuirement which i explained above.
    pleas suggest me the Detailed steps mainly Colloboration agreements and logical routings and
    also explain in detail if i can  go for BPM
    Also give cleear blogs but before giving make sure that it contains detailed screen shots because aIready gone thorugh
    Scenario File-JDBC-RFC
    File<-->JDBC Sync coomunication.
    https://www.sdn.sap.com/irj/scn/wiki?path=/display/xi/file-rfc-file(Without+BPM)
    /people/luis.melgar/blog/2008/05/13/synchronous-soap-to-jdbc--end-to-end-walkthrough
    Regards::
    Amar Srinivas Eli

  • Excise Reg at Depot

    Hi all,
    We have Excise REg no for Plant. But plant does not have Excise reg no.
    Material is shipped to Depot with excise invoice. What is the procedure at depot for GR.
    Do i need to capture the excise invoice?. From Depot, there is no excise invoice generated for customers.
    thanks.

    Hi,
    Refer following link;
    [J95 - Sales at Depot|http://help.sap.com/bp_bblibrary/500/HTML/J95_SaleDepot_EN_IN.htm]

  • How to set reg.cgi for VideoPhoneLabs

    i start with stratus .i try set it to work with my dedicated apache server and sql but have no clue how to do it or where to put this file on my server.
    i realy have probleme with reg.cgi
    for now i did www/cgi-bin/reg.cgi and in the xml i set my websiteurl = "http://88..../cgi-bin/"
    also how to complete reg.cgi for have it to talk with my db ?
    here the reg.cgi file.
    help please ...
    #! /usr/bin/python --
    reg.cgi by Michael Thornburgh.
    This file is in the public domain.
    IMPORTANT: This script is for illustrative purposes only. It does
    not have user authentication or other access control measures that
    a real production service would have.
    This script should be placed in the cgi-bin location according to
    your web server installation. The database is an SQLite3 database.
    Edit the location of the database in variable "dbFile".
    Create it with the following schema:
    .schema
    CREATE TABLE registrations (
        m_username VARCHAR COLLATE NOCASE,
        m_identity VARCHAR,
        m_updatetime DATETIME,
        PRIMARY KEY (m_username)
    CREATE INDEX registrations_updatetime ON registrations (m_updatetime ASC);
    # CHANGE THIS
    dbFile = '.../registrations.db'
    import cgi
    import sqlite3
    import xml.sax.saxutils
    query = cgi.parse()
    db = sqlite3.connect(dbFile)
    user = query.get('username', [None])[0]
    identity = query.get('identity', [None])[0]
    friends = query.get('friends', [])
    print 'Content-type: text/plain\n\n<?xml version="1.0" encoding="utf-8"?>\n<result>'
    if user:
        try:
            c = db.cursor()
            c.execute("insert or replace into registrations values (?, ?, datetime('now'))", (user, identity))
            print '\t<update>true</update>'
        except:
            print '\t<update>false</update>'
    for f in friends:
        print "\t<friend>\n\t\t<user>%s</user>" % (xml.sax.saxutils.escape(f), )
        c = db.cursor()
        c.execute("select m_username, m_identity from registrations where m_username = ? and m_updatetime > datetime('now', '-1 hour')", (f, ))
        for result in c.fetchall():
            eachIdent = result[1]
            if not eachIdent:
                eachIdent = ""
            print "\t\t<identity>%s</identity>" % (xml.sax.saxutils.escape(eachIdent), )
            if f != result[0]:
                print "\t\t<registered>%s</registered>" % (xml.sax.saxutils.escape(result[0]), )
        print "\t</friend>"
    db.commit()
    print "</result>"

    Persistent binding is effectively provided by STMS (MPxIO) - is there anything in particular you're wanting to do that STMS doesn't provide?

  • I bought an itunes gift card in a different country than my account is reg to, can i use it??

    my acc is reg in ireland, i am currently in new zealand and bought a gift card, i cant work out how to use it, help!

    You can't.
    They are country specific.
    You could get a New Zealand address, then get a credit card that is billed to that address, then set up an account in New Zealand, and as long as you are inside the Borders of New Zealand, then you could redeem the card.

  • Mysterious function module DYNP_VALUES_UPDATE?

    Hi ABAP Gurus/Experts,
    I'm very confused about function module DYNP_VALUES_UPDATE in function group SHL2. It'll be nice if you could answer my question below.
    I tried to call the function module with space passed to both parameter DYNAME and DYNUMB, such as the following, and it successfully updated the selection screen of the calling report. I wonder how it got program/screen information of the calling report.
        CALL FUNCTION 'DYNP_VALUES_UPDATE'
          EXPORTING
            dyname     = space
            dynumb     = space
          TABLES
            dynpfields = lt_dynp_fld[]
          EXCEPTIONS
            OTHERS     = 0.
    The source code of the function module is shown below. It merely calls a subroutine and simply ignores parameters DYNAME and DYNUMB.
    FUNCTION dynp_values_update.
    *"*"Lokale Schnittstelle:
    *"       IMPORTING
    *"             VALUE(DYNAME) LIKE  D020S-PROG
    *"             VALUE(DYNUMB) LIKE  D020S-DNUM
    *"       TABLES
    *"              DYNPFIELDS STRUCTURE  DYNPREAD
      PERFORM fill_dpovtab_upd TABLES dynpfields.
    ENDFUNCTION.
    The form is shown below. Did the C function DYNP_GET_STATUS link function group SHL2 to the calling report in the background? I guess that field symbol <dpovtab> (linked to global variable dpovtab610 in my test) in the form was mapped to the calling report by the ABAP runtime environment...
    FORM fill_dpovtab_upd TABLES dynpfields STRUCTURE dynpread.
      DATA: hf TYPE i, dp TYPE dpov610, hstepl(3) TYPE n,
            flduseoffs TYPE i, flduselen TYPE i,
            fldnameoffs TYPE i, fldnamelen TYPE i,
            fldinhoffs TYPE i, fldinhlen TYPE i,
            fldinpoffs TYPE i, fldinplen TYPE i.
      FIELD-SYMBOLS: <dpovline> TYPE ANY, <dpovtab> TYPE table,
                     <dfline> TYPE dynpread.
      CALL 'DYNP_GET_STATUS' ID 'FUNCTION' FIELD 16 "kennt der Kern DPOV610?
                             ID 'VALUE' FIELD hf.             "#EC CI_CCALL
      IF sy-subrc NE 0 OR hf EQ 0.                  "sieht wohl nicht so aus
        ASSIGN: dpovtab TO <dpovline>,
                dpovtab[] TO <dpovtab>.
        flduseoffs = 0. flduselen = 1.
        fldnameoffs = 1. fldnamelen = 132.
        fldinhoffs = 133. fldinhlen = 132.
        fldinpoffs = 265. fldinplen = 1.
      ELSE.                                         "DPOV610 ist bekannt
        ASSIGN: dpovtab610 TO <dpovtab>,
                dp TO <dpovline>.
        flduseoffs = 0. flduselen = 1.
        fldnameoffs = 1. fldnamelen = 140.
        fldinpoffs = 141. fldinplen = 1.
        fldinhoffs = 142. fldinhlen = 255.
      ENDIF.
    * dynpfields nach dpovtab schaufeln
      CLEAR: <dpovtab>, <dpovline>.
      LOOP AT dynpfields ASSIGNING <dfline>.
        IF <dfline>-stepl GT 0.
          hstepl = <dfline>-stepl.
          CONCATENATE <dfline>-fieldname '(' hstepl ')'
               INTO <dpovline>+fldnameoffs(fldnamelen).
        ELSE.
          <dpovline>+fldnameoffs(fldnamelen) = <dfline>-fieldname.
        ENDIF.
        <dpovline>+flduseoffs(flduselen) = 'E'.
        <dpovline>+fldinhoffs(fldinhlen) = <dfline>-fieldvalue.
        APPEND <dpovline> TO <dpovtab>.
      ENDLOOP.
    ENDFORM.                    "fill_dpovtab_upd

    Hi Bo,
    In some place, some where, ..., SAP links the dpov table of this function group with your kernel. See:
    call 'DYNP_GET_STATUS' id 'FUNCTION' field 16 "kennt der Kern DPOV610?
                           id 'VALUE' field hf.   "#EC CI_CCALL
    if sy-subrc ne 0 or hf eq 0.                  "sieht wohl nicht so aus
    This call is a internal function that verify the table in the kernel.
    With sure another point of system is linking it.
    Best regards,
    Leandro Mengue

  • ABAP Basics: FUNCTION 'DYNP_VALUES_UPDATE'

    Hi,
    in a selection-screen-event (AT SELECTION-SCREEN ON RADIOBUTTON GROUP dest.) I want to modify another screen field depending on the input for the 2 radiobutton fields.
    The exit is only processed after I declared the first parameter with addition "USER-COMMAND dest". I don't understand why, but it's OK.
    Now comes the dilemma:
    When changing the radiobutton first, the event is processed and the value on the selection screen replaced.
    When I do it again, the event is processed, but the replament does not work.
    I'm using DYNP_VALUES_UPDATE as shown below:
    <pre>
    FORM dynp_values_update  USING    pv_field TYPE fieldname
                                      pv_value TYPE any.
      DATA:
        lv_dyname TYPE  d020s-prog,
        lv_dynumb TYPE   d020s-dnum,
        lt_dynpfields TYPE STANDARD TABLE OF dynpread WITH DEFAULT KEY,
        ls_dynpfields TYPE dynpread.
      FIELD-SYMBOLS:
        <dynpfields> TYPE dynpread.
      lv_dyname = sy-repid.
      lv_dynumb = sy-dynnr.
      ls_dynpfields-fieldname = pv_field.
      ls_dynpfields-fieldvalue = pv_value.
      APPEND ls_dynpfields TO lt_dynpfields.
      CALL FUNCTION 'DYNP_VALUES_UPDATE'
        EXPORTING
          dyname               = lv_dyname
          dynumb               = lv_dynumb
        TABLES
          dynpfields           = lt_dynpfields
        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.
    ENDFORM.                    " dynp_values_update
    </pre>
    Sy-Subrc is zero - what's wrong? Obviously the update takes place only if the screen field is empty.
    Please help me, thank you.
    Regards,
    Clemens

    Please check this sample program,  here there is no need to use the DYNPRO_VALUE_UPDATE.
    report zrich_0001 .
    parameters: p_rad1 radiobutton group dest user-command chk,
                p_rad2 radiobutton group dest,
                p_file type localfile.
    <b>
    * Comment out this event
    *at selection-screen on radiobutton group dest.</b>
    <b>at selection-screen output.
      if p_rad1 = 'X'.
        p_file =  'C:/TestFile1.txt'.
      elseif p_rad2 = 'X'.
        p_file =  'C:/TestFile2.txt'.
      endif.</b>
    Regards,
    Rich Heilman

  • Problems with FM F4IF_INT_TABLE_VALUE_REQUEST and DYNP_VALUES_UPDATE

    Hi gurus,
    Im making a search help using FM F4IF_INT_TABLE_VALUE_REQUEST with multiple choice and it's working fine, my problem it's passing the values choosed from this FM to the screen...
    I've declare a select option, and what i want it's to pass the choosen values from the search help to the screen but it's not working fine... i already tried the FM DYNP_VALUES_UPDATE to update the screen field but still yhe same...
    Below goes my code, just in case...
      CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
           EXPORTING
                retfield        = 'ZLINHA'
                dynpprog        = sy-repid
                dynpnr          = sy-dynnr
                dynprofield     = 'SO_NUM'
                window_title    = 'Programa'
                value_org       = 'S'
                multiple_choice = 'X'
           TABLES
                value_tab       = it_values
                return_tab      = return_tab.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ELSE.
        LOOP AT return_tab.
    *      CLEAR r_num.
          so_num-option = 'EQ'.
          so_num-sign = 'I'.
          MOVE 'SO_NUM' TO dynpfields-fieldname.
          MOVE return_tab-fieldval TO dynpfields-fieldvalue.
          APPEND dynpfields.
    *      so_num-low = return_tab-fieldval.
    *      APPEND so_num.
        ENDLOOP.
      ENDIF.
      CLEAR dynpfields.
      CALL FUNCTION 'DYNP_VALUES_UPDATE'
           EXPORTING
                dyname     = progname
                dynumb     = dynnum
           TABLES
                dynpfields = dynpfields.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    If anyone has any idea, feel free to speak
    Thanks in advance,
    Best Regards

    Hi Martins,
    You have used the select options that means you have to use the function module for the <select-option >-low and <select-option>-high.
    I am giving you a code snippet in which the selection screen has select-options and with the help of function module it shows F4 help and pass the values.
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-023.
    SELECT-OPTIONS:S_PIDNUM FOR ZMST_PERMIT-ZPIDNUM ,
                   S_ENGDSC FOR ZMST_PERMIT-ZENGDSC NO INTERVALS LOWER CASE,
                   S_ARBDSC FOR ZMST_PERMIT-ZARBDSC NO INTERVALS LOWER CASE,
                   S_TARIFF FOR ZMST_PERMIT-ZTARIFF NO INTERVALS,
                   S_PERNUM FOR ZMST_PERMIT-ZPERNUM NO INTERVALS,
                   S_ARRPRT FOR ZMST_PERMIT-ZARRPRT NO INTERVALS MATCHCODE OBJECT ZMST_PORTS.
    PARAMETER:P_PERTYP(2) TYPE C AS LISTBOX VISIBLE LENGTH 20.
    SELECTION-SCREEN END OF BLOCK B1.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_PIDNUM-LOW.
      W_NAME2 = 'S_PIDNUM-LOW'.
      W_NAME1 = 'ZPIDNUM'.
      PERFORM F4_HELP USING W_NAME1 W_NAME2 .         "calling subroutine to provide desired F4 help
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_PIDNUM-HIGH.
      W_NAME2 = 'S_PIDNUM-HIGH'.
      W_NAME1 = 'ZPIDNUM'.
      PERFORM F4_HELP USING W_NAME1 W_NAME2 .         "calling subroutine to provide desired F4 help
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_ENGDSC-LOW.
      W_NAME2 = 'S_ENGDSC'.
      W_NAME1 = 'ZENGDSC'.
      PERFORM F4_HELP USING W_NAME1 W_NAME2 .         "calling subroutine to provide desired F4 help
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_ARBDSC-LOW.
      W_NAME2 = 'S_ARBDSC'.
      W_NAME1 = 'ZARBDSC'.
      PERFORM F4_HELP USING W_NAME1 W_NAME2 .         "calling subroutine to provide desired F4 help
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_TARIFF-LOW.
      W_NAME2 = 'S_TARIFF'.
      W_NAME1 = 'ZTARIFF'.
      PERFORM F4_HELP USING W_NAME1 W_NAME2 .         "calling subroutine to provide desired F4 help
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_PERNUM-LOW.
      W_NAME2 = 'S_PERNUM'.
      W_NAME1 = 'ZPERNUM'.
      PERFORM F4_HELP USING W_NAME1 W_NAME2 .         "calling subroutine to provide desired F4 help
    *&      Form  F4_HELP
          text
    -->  p1        text
    <--  p2        text
    FORM F4_HELP USING: W_VAR TYPE DFIES-FIELDNAME
                        W_VAR1 TYPE HELP_INFO-DYNPROFLD .
    Fetching data from zmst_permit for F4 help on PERMIT ID No.--
      IF IT_PERMIT[] IS INITIAL.
        SELECT ZPIDNUM
               ZENGDSC
               ZARBDSC
               ZTARIFF
               ZPERNUM
               ZARRPRT
               ZEFFDT
               ZEXPDT
               FROM ZMST_PERMIT INTO CORRESPONDING FIELDS OF TABLE IT_PERMIT.
      ENDIF.
      CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
        EXPORTING
          RETFIELD        = W_NAME1 " 'ZPIDNUM'
          DYNPPROG        = 'ZMSTR0022'
          DYNPNR          = SY-DYNNR
          DYNPROFIELD     = W_NAME2 "'S_PIDNUM'
          VALUE_ORG       = 'S'
        TABLES
          VALUE_TAB       = IT_PERMIT
        EXCEPTIONS
          PARAMETER_ERROR = 1
          NO_VALUES_FOUND = 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.
    ENDFORM.                                                    " F4_HELP
    I hope this will help you.
    Help children of U.N World Food Program by rewarding  points and encourage others to answer your queries.

  • Select options - dynp_values_update

    Hi,
    I need to update a select option ( multiple values ) in the selection screen. I tried with DYNP_VALUES_UPDATE but it was not working. I am checking on this for last two days but did not reach the solution.
    Please donot tell me to use submit statement ( calls an internall session ) becuase that is what i got when i searched in SCN. I want this functionality to happen when the f4 help is selected. We are providing a popup of multiple checkboxes when f4 is pressed on a select option. When one or more check boxes are selected then those values must be appended to the select option. Please give me some ideas.
    If i have to use DYNP_VALUES_UPDATE then how should i use it for select option ?
    Regards
    Kesav

    Hello Keshav,
    Not sure why you've used REUSE_ALV_POPUP_TO_SELECT. You can achieve the same by turning on the MULTIPLE_CHOICE param in F4IF_INT_TABLE_VALUE_REQUEST. Check this code snippet:
    DATA: v_field TYPE fieldname.
    SELECT-OPTIONS: s_field FOR v_field NO INTERVALS.
    AT SELECTION-SCREEN OUTPUT.
      LOOP AT SCREEN.
        IF screen-name = 'S_FIELD-LOW'.
          screen-input = '0'.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_field-low.
    * Local type declarations
      TYPES : BEGIN OF t_flds,
        tabname   TYPE dfies-tabname,
        fieldname TYPE dfies-fieldname,
        keyflag   TYPE dfies-keyflag,
        fieldtext TYPE dfies-fieldtext,
      END OF t_flds.
      CONSTANTS: lc_field TYPE fieldname  VALUE 'FIELDNAME'.
    * Local data declarations
      DATA:
            ls_flds TYPE t_flds,
            lt_flds TYPE STANDARD TABLE OF t_flds,
            ls_values TYPE ddshretval,
            lt_values TYPE STANDARD TABLE OF ddshretval,
            lt_dfies TYPE TABLE OF dfies,
            ls_dfies TYPE dfies.
    * Get field details of the Table
      CALL FUNCTION 'DDIF_FIELDINFO_GET'
        EXPORTING
          tabname        = 'MARC'
          langu          = sy-langu
        TABLES
          dfies_tab      = lt_dfies
        EXCEPTIONS
          not_found      = 1
          internal_error = 2
          OTHERS         = 3.
      IF sy-subrc = 0.
        LOOP AT lt_dfies  INTO ls_dfies WHERE fieldname NE 'MANDT'.
          MOVE-CORRESPONDING ls_dfies TO ls_flds.
          APPEND ls_flds TO lt_flds.
        ENDLOOP.
      ELSE.
        EXIT.
      ENDIF.
      CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
        EXPORTING
          retfield        = lc_field
          window_title    = 'Select the Table Field'(001)
          dynpprog        = sy-repid
          dynpnr          = sy-dynnr
          dynprofield     = 'S_FIELD-LOW'
          value_org       = 'S'
          multiple_choice = 'X'
          display         = 'F'
        TABLES
          value_tab       = lt_flds
          return_tab      = lt_values.
      s_field-sign    = 'I'.
      s_field-option  = 'EQ'.
      LOOP AT lt_values INTO ls_values .
        s_field-low = ls_values-fieldval.
        APPEND s_field.
      ENDLOOP.
      DATA: lt_dynpread   TYPE STANDARD TABLE OF dynpread,
            lwa_dynpread  TYPE dynpread.
      READ TABLE s_field INDEX 1.
      IF sy-subrc = 0.
        lwa_dynpread-fieldname  = 'S_FIELD-LOW'.
        lwa_dynpread-fieldvalue = s_field-low.
        APPEND lwa_dynpread TO lt_dynpread.
    *  Update the screen field values
        CALL FUNCTION 'DYNP_VALUES_UPDATE'
          EXPORTING
            dyname               = sy-repid
            dynumb               = sy-dynnr
          TABLES
            dynpfields           = lt_dynpread
          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 NE 0.
        ENDIF.
      ENDIF.
    Hope this helps.
    BR,
    Suhas

  • Function DYNP_VALUES_UPDATE not working in PBO

    Hello,
    I have a field 'Risk Category' whose value I need to change upon an action. The action is controlled through a button on the screen. For e.g: if the action is 'Update Credit Info', when the user chooses this action, it takes him to another location where he makes changes to the Credit parameters. When he returns back to the original screen, he needs to see the new value for 'Risk Category'.
    I have controlled this in the PBO...I read the table containing the risk category and then call the function DYNP_VALUES_UPDATE. However, the value of the field does not change.
    Please find my code below:
    MODULE status_1100 OUTPUT.
      LOOP AT SCREEN.
    IF screen-name = 'KNKK-CTLPC'.
          IF lt_dynpfld IS NOT INITIAL.
            LOOP AT lt_dynpfld INTO ls_dynpfld.
              DELETE TABLE lt_dynpfld FROM ls_dynpfld.
            ENDLOOP.
          ENDIF.
          SELECT SINGLE ctlpc FROM knkk
          INTO ls_dynpfld-fieldvalue
          WHERE kunnr = knkk-kunnr.
          ls_dynpfld-fieldname = 'KNKK-CTLPC'.
          APPEND ls_dynpfld TO lt_dynpfld.
          CLEAR: ls_dynpfld.
          SELECT SINGLE rtext FROM t691t
          INTO ls_dynpfld-fieldvalue
          WHERE ctlpc = ls_dynpfld-fieldvalue.
          ls_dynpfld-fieldname = 'T691T-RTEXT'.
          APPEND ls_dynpfld TO lt_dynpfld.
          CALL FUNCTION 'DYNP_VALUES_UPDATE'
            EXPORTING
              dyname               = sy-repid
              dynumb               = '1100'
            TABLES
              dynpfields           = lt_dynpfld
            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.
        ENDIF.
      ENDLOOP.
    ENDMODULE.                             " STATUS_1100  OUTPUT
    The flow logic for the screen 1100 is:
    PROCESS BEFORE OUTPUT.
      MODULE STATUS_1100.
    PROCESS AFTER INPUT.
    Please let me know if there is something wrong with this code or if something is missing.
    Thanks,
    Rugmani

    Well, if this is not the program, please suggest an alternative program.

  • Problem with FM "DYNP_VALUES_UPDATE"

    Hi gurus
         I am using a table control containg 2 columns. I have used a f4 help in the first column by the fm "F4IF_INT_TABLE_VALUE_REQUEST" . And the corresponding second column i am displaying a value for which i have used the fm "DYNP_VALUES_UPDATE" . It's working fine but after the values upadted in the second column , the value in the first column vanishes.It becomes balnk .
    so please help me . thanks in advance .
    regards
    Amarendra

    HI,
    Check this Code ..
    PARAMETES : p_werks type ...
    PARAMETES : p_plnnr type ....
    PARAMETES : p_plnal type....
    AT SELECTION-SCREEN ON P_PLNNR.
      data:
        lg_condition    type string.
      data:
         lwa_ddshretval type ddshretval,
         lwa_dselc      type dselc,
         lwa_dynpread   type dynpread.
      data:
         li_f4_insp     type standard table of t_f4_insp,
         li_ddshretval  type standard table of ddshretval,
         li_dselc       type standard table of dselc,
         li_dynpread    type standard table of dynpread.
      lwa_dynpread-fieldname = 'P_WERKS'.
      append lwa_dynpread to li_dynpread.
      clear lwa_dynpread.
    * Read Screen Field Values.
      call function 'DYNP_VALUES_READ'
        exporting
          dyname     = sy-repid
          dynumb     = sy-dynnr
        tables
          dynpfields = li_dynpread.
    * Read the first record as only one record will be present
      read table li_dynpread into lwa_dynpread index 1.
      p_werks = lwa_dynpread-fieldvalue.
      if p_werks is initial.
        move 'PLNTY EQ ''Q''' to lg_condition.
      else.
        move 'WERKS EQ P_WERKS AND PLNTY EQ ''Q''' to lg_condition.
      endif.
    * Fetch Data
      select werks
             plnnr
             plnal
             plnty
             ktext
        into table li_f4_insp
        from plko
        where (lg_condition).
      lwa_dselc-fldname = 'F0002'.
      lwa_dselc-dyfldname = 'PLNNR'.
      append lwa_dselc to li_dselc.
      clear lwa_dselc.
      lwa_dselc-fldname = 'F0003'.
      lwa_dselc-dyfldname = 'PLNAL'.
      append lwa_dselc to li_dselc.
      clear lwa_dselc.
    * FM For F4 Help
      call function 'F4IF_INT_TABLE_VALUE_REQUEST'
        exporting
          retfield        = 'PLNNR'
          dynpprog        = sy-cprog
          dynpnr          = sy-dynnr
          dynprofield     = 'PLNNR'
          value_org       = 'S'
        tables
          value_tab       = li_f4_insp
          return_tab      = li_ddshretval
          dynpfld_mapping = li_dselc
        exceptions
          parameter_error = 1
          no_values_found = 2
          others          = 3.
      if sy-subrc eq 0.
        refresh li_dynpread.
        read table li_ddshretval into lwa_ddshretval index 1.
        if sy-subrc eq 0.
          move lwa_ddshretval-fieldval to p_plnnr.
          lwa_dynpread-fieldname = 'P_PLNNR'.
          lwa_dynpread-fieldvalue = lwa_ddshretval-fieldval.
          append lwa_dynpread to li_dynpread.
          clear lwa_dynpread.
        endif.                             " IF sy-subrc EQ 0.
        read table li_ddshretval into lwa_ddshretval index 2.
        if sy-subrc eq 0.
          move lwa_ddshretval-fieldval to p_plnal.
          lwa_dynpread-fieldname = 'P_PLNAL'.
          lwa_dynpread-fieldvalue = lwa_ddshretval-fieldval.
          append lwa_dynpread to li_dynpread.
          clear lwa_dynpread.
        endif.                             " IF sy-subrc EQ 0.
      endif.                               " IF sy-subrc EQ 0.
    * Set Screen Field Values.
      call function 'DYNP_VALUES_UPDATE'
        exporting
          dyname               = sy-repid
          dynumb               = sy-dynnr
        tables
          dynpfields           = li_dynpread
        exceptions
          invalid_abapworkarea = 1
          invalid_dynprofield  = 2
          invalid_dynproname   = 3
          invalid_dynpronummer = 4
          invalid_request      = 5
          no_fielddescription  = 6
          undefind_error       = 7
          others               = 8.
      check sy-subrc eq 0.

  • Screen Fields Not getting Updated with DYNP_VALUES_UPDATE

    Hi All,
    I am using FM DYNP_VALUES_READ to read the screen field values and then modifying those values and passing the modified table to DYNP_VALUES_UPDATE. But the problem is screen fields are not populated with these values . The values I wish to populate are footer values . I am using OO ALV for this wherein I am handling an event for filter of records and accordingly I need to modify my footer. Any Suggestions??
    *&      Form  footer
          Caslculate Total items, number of hits/Miss and percent MSP
    -->  p1        text
    <--  p2        text
    FORM footer .
      CLEAR : io_totitems,
              io_tothit,
              io_totmiss,
              io_permiss.
    IF NOT l_flag EQ 1.
    Get total items
      DESCRIBE TABLE i_outdata LINES io_totitems.
      LOOP AT i_outdata INTO wa_outdata.
      calculate number of hits
        IF wa_outdata-hit_miss  = 'HIT'.
          io_tothit = io_tothit + 1.
        ENDIF.
      calculate number of Miss
        IF wa_outdata-hit_miss  = 'MISS'.
          io_totmiss = io_totmiss + 1.
        ENDIF.
        CLEAR wa_outdata.
      ENDLOOP.
    calculate percent MSP
      io_permiss = ( ( io_totitems - io_totmiss ) / io_totitems ) * 100 .
      IF l_flag EQ 1.
        wa_dynpread-fieldname = 'IO_TOTITEMS'.
        APPEND wa_dynpread TO t_dynpread.
        wa_dynpread-fieldname = 'IO_TOTHIT'.
        APPEND wa_dynpread TO t_dynpread.
        wa_dynpread-fieldname = 'IO_TOTMISS'.
        APPEND wa_dynpread TO t_dynpread.
        wa_dynpread-fieldname = 'IO_PERMISS'.
        APPEND wa_dynpread TO t_dynpread.
        CLEAR wa_dynpread.
        d020s-prog = sy-repid.
        d020s-dnum = sy-dynnr.
        CALL FUNCTION 'DYNP_VALUES_READ'
                EXPORTING
                   dyname               = d020s-prog
                   dynumb               = d020s-dnum
                   translate_to_upper   = 'X'
              REQUEST              = ' '
                TABLES
                   dynpfields           = t_dynpread.
        MOVE io_totitems TO io_totitem.
        CONDENSE io_totitem NO-GAPS.
        MOVE io_tothit TO io_tothits.
        CONDENSE io_tothits NO-GAPS.
        MOVE io_totmiss TO io_totmis.
        CONDENSE io_totmis NO-GAPS.
        MOVE io_permiss TO io_permis.
        CONDENSE io_permis NO-GAPS.
        LOOP AT t_dynpread INTO wa_dynpread.
          CASE: wa_dynpread-fieldname.
            WHEN 'IO_TOTITEMS'.
              wa_dynpread-fieldvalue = io_totitem .
              MODIFY t_dynpread FROM wa_dynpread.
            WHEN 'IO_TOTHIT'.
              wa_dynpread-fieldvalue = io_tothits.
              MODIFY t_dynpread FROM wa_dynpread.
            WHEN 'IO_TOTMISS'.
              wa_dynpread-fieldvalue = io_totmis.
              MODIFY t_dynpread FROM wa_dynpread.
            WHEN 'IO_PERMISS'.
              wa_dynpread-fieldvalue =  io_permis .
              MODIFY t_dynpread FROM wa_dynpread.
          ENDCASE.
          CLEAR wa_dynpread.
        ENDLOOP.
        CALL FUNCTION 'DYNP_VALUES_UPDATE'
          EXPORTING
            dyname               = d020s-prog
            dynumb               = d020s-dnum
          TABLES
            dynpfields           = t_dynpread
          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.
      ENDIF.
    Get all fotter details in a internal table
    this is used to download footer in Excel
      wa_footer-fldname = 'Total Items '.
      wa_footer-value = io_totitems.
      APPEND wa_footer TO i_footer.
      wa_footer-fldname = 'Number of HIT'.
      wa_footer-value = io_tothit.
      APPEND wa_footer TO i_footer.
      wa_footer-fldname = 'Number of MISS'.
      wa_footer-value = io_totmiss.
      APPEND wa_footer TO i_footer.
      wa_footer-fldname = 'Percentage MISS '.
      wa_footer-value = io_permiss.
      APPEND wa_footer TO i_footer.
      CLEAR wa_footer.
    ENDFORM.                    " footer

    data: t_dynfields1 type table of dynpread with header line.
    CALL FUNCTION 'DYNP_VALUES_READ'
    EXPORTING
    dyname = d020s-prog
    dynumb = d020s-dnum
    translate_to_upper = 'X'
    REQUEST = ' '
    TABLES
    dynpfields =  t_dynfields1.
    <b>read table t_dynfields1 index 1</b> “ I hope this is missing
    I will be selecting from a list .
    Because once the value is read we need to update the screen field with that value .
    Here the selected value will be in the first place
    Now
    Your operation is to populate the fields with some variables .
    In the same when I do this there is only one value then
    Im expecting only one entry here …
    LOOP AT t_dynpread INTO wa_dynpread.
    CASE: wa_dynpread-fieldname.
    WHEN 'IO_TOTITEMS'.
    wa_dynpread-fieldvalue = io_totitem .
    MODIFY t_dynpread FROM wa_dynpread.
    WHEN 'IO_TOTHIT'.
    wa_dynpread-fieldvalue = io_tothits.
    MODIFY t_dynpread FROM wa_dynpread.
    WHEN 'IO_TOTMISS'.
    wa_dynpread-fieldvalue = io_totmis.
    MODIFY t_dynpread FROM wa_dynpread.
    WHEN 'IO_PERMISS'.
    wa_dynpread-fieldvalue = io_permis .
    MODIFY t_dynpread FROM wa_dynpread.
    ENDCASE.
    CLEAR wa_dynpread.
    ENDLOOP. */
    Comment this for a while and
    Change the code as
    t_dynfields1-fieldname = ' '. "<--- header name
    t_dynfields1-fieldvalue = ' '."<----val  
    append t_dynfields1.
    t_dynfields1-fieldname = ' '.
    t_dynfields1-fieldvalue = ' '.
    append t_dynfields1.
    t_dynfields1-fieldname = ' '.
    t_dynfields1-fieldvalue = ' '.
    append t_dynfields1.
    And check .
    CALL FUNCTION 'DYNP_VALUES_UPDATE'
    EXPORTING
    dyname = d020s-prog
    dynumb = d020s-dnum
    TABLES
    dynpfields = t_dynfields1.
    regards,
    vijay

Maybe you are looking for

  • Can not view my photos in iPhoto. All photos are black

    I have an iPad 3 and I can not view my photos. I can view them through the photo stream on my phone but on my iPad they come up black. I'm not sure what to do.

  • Variable file path

    In File curfile1, I am fixing my path and sending that path in ReadFile. But I do not want to fix my path, instead whatever path I select while using my user interface should be my curfile1. My code below with fixed path is working fine: private void

  • Regarding Business Rule Framework

    Hi, Could u please explain the process of Business Rule Framework(BRF) and how to create this Business Rule Framework(BRF) explain with step by step process.

  • Filter Objects returned by Get-ChildItem

    Hello there, I had a look at the properties available for objects returned by Get-ChildItem command using: PS C:\> Get-ChildItem | Get-Member This command shows that objects returned by Get-ChildItem command possess properties 'Name, FullName, LastAc

  • How to add customer account in the existing variant

    Hi In the customer outstanding balance report, we are using a variant with relavent customer accounts. if we need to add some more customers in the variant how can we do. please help