How do I add validation to a system-generated Selection Screen?

As HR ABAPers know, using the Logical Database approach (I'm using PNPCE) gives you a system-generated Selection Screen.  Part of the specs I have for this report involves making sure that the begin and end dates for the period selected are for a two-week period.  If not, I should display an error message until the user enters a period such that the period (pn-begda and pn-endda) reflect a two-week period.
The code for the validation is easy enough, and I put it in the AT SELECTION-SCREEN event.  But here's the problem -- the code fires every time the user clicks the "Reporting Period" drop-down box, never giving the user a chance to specify a two-week period.  It fires because pn-begda and pn-endda are still all zeroes.  Even if I select "Other Period" from the drop-down list, the text boxes to allow me to specify the begin and end dates don't appear.
I've been working on this for quite a while, trying all kinds of things, but I'm spinning my wheels now.  I just want that check to happen when the user clicks the Execute button on the Selection Screen, not when he/she is still trying to enter criteria.  I'm thinking screen field validation for a system-generated Selection Screen has to be a pretty common thing, and there must be a good solution out there.
Any ideas?

Rich,
Absolutely beautiful -- that's exactly what I needed to learn.  Thank you so much.
Rob, I thought about that.  I even proposed to the users that I could default in a two-week range beginning with today, exactly as you suggested, but they didn't want that.  They felt that this report would more often than not be run to reflect data from two-week periods not necessarily starting today.  Still thought it was a good idea, but that's their call. _
Again, thanks Rich.  Points awarded.

Similar Messages

  • How do you add a new icon to the home screen?

    How do you add a new icon to the home screen?

    The only new icons you can add to your home screen are webclips, which can be added by using the "+" button in safari on the desired web page.
    You won't be able to add new apps until February when the SDK is fully seeded to developers.

  • How can I add a new filed to standart SAP Screen

    Hi eveybody,
    I am using ima11 t-code and I need to add A new screen field to standart SAP screen(program No SAPLAIA1 Screen:1001 ).I have found five user-exits(AAIR0001,AAIR0002A,AIR0003,AAIR0004,AAIR0006) but there is no screen-exit. How can I add a new filed to standart SAP Screen.Is it possible? If it is possible, how can I do that?

    hi
    yes you can add a search help for a filed on the screen
    but you need to find out for the USER EXIT available for that T-CODE
    because it is a standard T-CODE we can't add code directly to the standard T-code
    1st we need to find out for a user exit and then add code in that user exit
    reward if usefull

  • How to Add a new fields in the selection screen of LDB.

    Hi All,
    I want to add a new fields in the selection screen of LDB & then i need to select the data for that fields.
    So could you please tell me for that where i need to add the code for selecting the data.
    Thanks
    Roli

    Hi
    welcome to SDN forum
    If you are designing your own LDB with your own tables you can define tree structure and then the selection screen for the tables
    if you wants to modify the std LDB of SAp means take the access key and to modify that code
    if you add the extra field you have to modify the where conditions in the code also
    see the doc
    A logical database is a special ABAP/4 program which combines the contents of certain database tables. You can link a logical database to an ABAP/4 report program as an attribute. The logical database then supplies the report program with a set of hierarchically structured table lines which can be taken from different database tables.
    LDB offers an easy-to-use selection screens. You can modify the pre-generated selection screen to your needs. It offers check functions to check whether user input is complete, correct, and plausible. It offers reasonable data selections. It contains central authorization checks for data base accesses. Enhancements such as improved performance immediately apply to all report programs that use the logical database.
    Less coding s required to retrieve data compared to normal internel tables.
    Tables used LDB are in hierarchial structure.
    Mainly we used LDBs in HR Abap Programming.
    Where all tables are highly inter related so LDBs can optimize the performance there.
    Check this Document. All abt LDB's
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.highlightedcontent?documenturi=%2flibrary%2fabap%2fabap-code-samples%2fldb+browser.doc
    GO THROUGH LINKS -
    http://www.sap-basis-abap.com/saptab.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/db9bfa35c111d1829f0000e829fbfe/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/db9b5e35c111d1829f0000e829fbfe/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/c6/8a15381b80436ce10000009b38f8cf/frameset.htm
    /people/srivijaya.gutala/blog/2007/03/05/why-not-logical-databases
    Re: **LDB**
    www.sapbrain.com/FAQs/TECHNICAL/SAP_ABAP_Logical_Database_FAQ.html
    www.sap-img.com/abap/abap-interview-question.htm
    www.sap-img.com/abap/quick-note-on-design-of-secondary-database-indexes-and-logical-databases.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/db9b5e35c111d1829f0000e829fbfe/content.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/9f/db9bb935c111d1829f0000e829fbfe/content.htm
    Gothru the blog which provides info on LDB's:
    /people/srivijaya.gutala/blog/2007/03/05/why-not-logical-databases
    Sample code
    TABLES: SPFLI,
    SFLIGHT,
    SBOOK,
    SCARR.
    START-OF-SELECTION.
    GET SPFLI.
    WRITE:/ ’SPFLI: ’, SPFLI-CARRID, SPFLI-CONNID,
    SPFLI-AIRPFROM, SPFLI-AIRPTO.
    GET SFLIGHT.
    WRITE:/ ’ SFLIGHT: ’, SFLIGHT-CARRID, SFLIGHT-CONNID, SFLIGHT-FLDATE.
    GET SBOOK.
    WRITE:/ ’ SBOOK: ’, SBOOK-CARRID, SBOOK-CONNID,
    SBOOK-FLDATE, SBOOK-BOOKID.
    GET SFLIGHT LATE.
    WRITE:/ ’ GET SFLIGHT LATE: ’, SFLIGHT-FLDATE.
    Regards
    anji

  • How to register add-on of edited system form in sap b1 9.0?.

    Hi all,
    I have a problem in SAP b1 9.0.
    Actually I added one field of BPCode to Employee master data, so I want to register an add-on of that system form in SAP b1 9.0.
    When I create file of .ard as we watch it in video of 
    Bryan Gomez
    Creating and Registering SAP Add-on - YouTube     it will be created correctly, But the problem is when I register that the file of .ard it gives error (Cannot create a file when that file already exists). Again when I create a file of .ard of any other User form it gives the same error (Cannot create a file when that file already exists).
    But when I create and register the add-on of Hello World in Sample folder of SDK it will be registered correctly.
    How can I solve that problem.
    Anyone can help me please.

    Hi pallavi p,
    That's good but as I said above when I add the reference of UI API Version 9.0 in the project which has the system form or user form of sap b1 it exactly gives errors in menu.vb of the project.
    So let me give you the way you can try.
    1. Open new project/ visual basic/ sap business one/ sap business one add-on project. and save it any where
    2. Right click on your project
    3. Add new item
    4. Sap Business One
    5. System form (Employee master data) or user form
    6. Add
    And then if your form is opened
    7. Go to add the reference of UI API Version 9.0
    8. Check errors found in menu.vb (or in OutPut)
    So if it's possible try to solve that problem.
    Please anyone can help me.

  • How to add customize message on the variable selection screen in the query

    Hi all,
    Can we add an customise message on the variable selection screen in the query? If yes please let me know how it can be achevied?
    Thanks,
    Rani

    Hi Rani,
    I faced a similar issue (for what I understand your request is).
    My requirement for the Variable Screen was to do:
       1) place a link to a ppt file
       2) remove buttons "Save", "Save As...), "Delete"... the standard buttons come when running the Query or WebTempl
    We were using a Web Templ for BI7.0
    I struggled trying to find out how to do it. My conclusions are:
    - WAD, not sure we can accomplish it using a Web Template but i did not "play" a lot with the Web_Template Properties in order to know
    - XHTML, I was told in my post HTML modification was the way, but I have close to nil background in HTML and couold not find the way of accessing the Variable Entry screen
    For instance, I had to remove similar buttons and change some font size from a link on the Web Template (WAD), which was pretty straight forward. In WAD the buttons come with its own icon and to increase the Font size for that link we used XHTML (<font size="2" >). But the heck of the variable screen...well, i just did not get trhough to it to modify it in any way.
    Good luck,
    Definetly in a Query I would say that no.
    alex
    PS: If anyone had a better insight, please feel free to share it.

  • How to add order reason code field to selection screen of VL10

    Hi,
       How to add Order reason code(vbak-augru) to the selection screen of VL10.
      1. How to find enhancement for it?
       2.I want to display Order reason code field on output list also?
      3.Pls give steps i am new to enhancements
    thanking u advance...
    surya

    Hi,
    there is no user exit available for this report program, one alternative is copy the program associated with this standard program i.e. RVV50R10C to a Z program and modify it as per your requirement or if you want to modify the standard program you need access key.
    Regards,
    Raghavendra

  • How to add Material type(MTART) field on Selection screen of MB5B transaction code.

    Hi All,
        Please let me know how to add material type field on selection screen of MB5B transaction
    For that i made copy ZMB5B_COPY of original report RM07MLBD.
    Thanks in adv .
    Samadhan

    Hi,
    Once you copied the standard report to Z report, you can MTART in selection screen like below.
    and in order to inlcude the same in programming logic, we have three option.
    1) Check all related select queries, and include MTART in SELECT query using inner join with MARA.
    2) In START-OF-SELECTION event fill MATNR as shown below.
    3) If user entered any value in MTART, then before displaying the report just check material type of each material in the final internal table(which is used to display report) delete enteries from internal table accordingly.
    START-OF-SELECTION.
    IF MTART[] IS NOT INITIAL AND MATNR[] IS INITIAL.
        SELECT MATNR FROM MARA INTO MATNR-LOW WHERE MTART IN MTART.
          MATNR-OPTION = 'EQ'.
          MATNR-SIGN = 'I'.
          APPEND MATNR.
          CLEAR MATNR.
        ENDSELECT.
    ENDIF.
    The above option has one limitation: The selection screen variables has some restriction, please read the below thread.
    Facing problem in select statement dump DBIF_RSQL_INVALID_RSQL CX_SY_OPEN_S
    Getting Dump in the select query has more than 2000 entries
    Hope this will work for you .
    regards,
    Rajesh Sadula.

  • How do I Add Authentication to the WSDL generated?

    Hi Experts,
    I am creating web service in CAF to get All task assigned to a user using BPM API.
    The WSDL generated while testing from wsnavigator is picking up as a guest user even if I am entering the user details in invocation parameters.
    Can some one tell me how do I add authentication to the WSDL I have generated in CAF?
    Thanks in Advance
    Kumar.

    Hi Kumar,
    You Can find the above Section in : Go to http://hostname:port/nwa and open Configuration--->Connectivity --> Single Service Administration and open Service Definitions tab and select the application service for which you want to create the Authentication.
    Cheers
    Piyas

  • How to write HTML code in Web Template for selection screen

    Hello All,
    Is it possible to write a html code in the web template html tag so that the output of the html is displayed in the selection screen, i.e before the execution of query.
    I know that we can write html, which will be displayed once the query has been executed, but can it be done for selection screen.
    if so, how.
    My exact requirement is : to display a 2-3 lines of text in the selection criteria screen - sort of, various options available to user for entering values in the selection screen.  I was thinking of putting this text using HTML code in the selection screen.
    Regards,
    Nagendra.

    Hi Erick,
    No, unfortunately nobody replied to this thread. So i assumed it is not possible to modify the selection screen thru html code.
    Btw, as my requirement was to provide user with multiple answers on the selection screen. I did the validations on customer exit and popped an errror dialog when applicable.
    Regards,
    Nagendra.

  • How to remove non-bootable xp drive on os selection screen

    I have a non-bootable xp drive which shows up as a selection on my os startup selection screen that I want to delete since it can't be used.
    In xp it also shows up in the boot camp control panel under startup disks along w/ my bootable xp drive and osx drive.
    I was going to edit the boot.ini file but it doesn't seem to show up there, see my boot.ini file below:
    [boot loader]
    timeout=3
    default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Professional 3GB" /noexecute=optin/ 3GB /fastdetect
    Anyone know how I can remove this phantom drive from my startup disk selection screen?

    In my case I have an OSX boot drive, an additional dedicated BC drive running XP and 2 additional drives I use for backing up and storage. All 4 drives are internal for what it's worth. My "phantom" drive was one of my backup drives.
    What I did was transfer the files I wanted to keep on my "phantom" drive over to another drive. Went into DiskUtility erased the "phantom" drive and then reformatted the drive, transferred my info back onto it and was finished. I probably could have skipped the erasing but did it anyway.
    Note, I did this to a secondary backup drive which kept appearing on my boot screen and was annoying me. It started showing up on my boot selection screen after I had tested a restore of a clone I had made and then erased the drive after I saw that the clone was viable. I did not do this w/a BC partition of my primary hard drive so I'm not sure how this would work in that situation.

  • How to Change the Font Size in Module Pool Selection Screen?

    Hi,
    There is a module pool, and I need to change the font size mentioned in the selection screen. Could you plaese tell me, how will I be able to do that?

    Hi ,
    If you are asking for text field , then check the options avaliable in Display tab of Attributes.
    Hope this helps you.

  • How to display current day(13-nov-06) in selection screen-its very urgent

    hi all,
    iam sending code to change the date from mm/dd/yyyy to dd-mon-yy(10-nov-06).my requirement is i have to keep a parameter and when iam executing thid report say p_text1 is a parameter when iam executing this report in selection screen it has to show 12-nov-06 say current date.any body can suggest me how to do and please send me the sample code.
    iam sending the code to change the date format as below.
    data: begin of itab occurs 0,
    SPRAS type SPRAS,
    MNR LIKE T247-MNR,
    KTX LIKE T247-KTX,
    LTX LIKE T247-LTX,
    end of itab.
    DATA : month LIKE T247-MNR.
    DATA: YEAR(4).
    DATA: FINAL(18).
    DATA: DAY(2).
    DAY = sy-datum+6(2).
    MONTH = sy-datum+4(2).
    YEAR = sy-datum+0(4).
    DAY = sy-datum+6(2).
    YEAR = sy-datum+0(4).
    select SINGLE * from t247 into itab where mnr = month
    AND SPRAS = 'E'.
    APPEND ITAB.
    CONCATENATE DAY ITAB-KTX YEAR+2(2)
    INTO FINAL SEPARATED BY '-'.
    WRITE: FINAL.
    thanks,
    maheedhar.T

    keep this entire code in INITIALIZATION EVENT.
    data: begin of itab occurs 0,
    SPRAS type SPRAS,
    MNR LIKE T247-MNR,
    KTX LIKE T247-KTX,
    LTX LIKE T247-LTX,
    end of itab.
    DATA : month LIKE T247-MNR.
    DATA: YEAR(4).
    DATA: FINAL(18).
    DATA: DAY(2).
    parameters: p_date type char15.
    initialization.
    DAY = sy-datum+6(2).
    MONTH = sy-datum+4(2).
    YEAR = sy-datum+0(4).
    DAY = sy-datum+6(2).
    YEAR = sy-datum+0(4).
    select SINGLE * from t247 into itab where mnr = month
    AND SPRAS = 'E'.
    APPEND ITAB.
    CONCATENATE DAY ITAB-KTX YEAR+2(2)
    INTO P_DATE SEPARATED BY '-'.

  • How to display data from internal table in the SELECTION-SCREEN

    Hello Experts,
    My requirement is to display the data's from an internal table in the selection screen. I tried using selection-screen comment. But it is working only for a single record. Can anyone please tell me how to do this?

    Hi Ritika,
    we cant use write statement inside selection-screen.
    see my coding.
    SELECTION-SCREEN BEGIN OF SCREEN 123 AS WINDOW TITLE TEXT-456.
      SELECTION-SCREEN BEGIN OF BLOCK BL1 WITH FRAME TITLE TEXT-BL1
                                          NO INTERVALS.
        SELECT-OPTIONS SEL1 FOR SY-DATUM.
        PARAMETERS     PAR1(10).
    <b>** I WANT ALL RECORDS FROM AN INTERNAL TABLE HERE ONLY</b>
        SELECTION-SCREEN END OF BLOCK BL1.
      SELECTION-SCREEN PUSHBUTTON 2(10)  but1 USER-COMMAND cli1.
      SELECTION-SCREEN PUSHBUTTON 20(10)  but2 USER-COMMAND cli2.
    SELECTION-SCREEN END OF SCREEN 123.

  • How to populate values in a Listbox parameter in selection screens

    I have a parameter(as list box) field in selection screens. And now I want to populate a list from a ztable field values.  How to do that.
    Thanks in Advance

    Hi,
    You have to use the FM VRM_SET_VALUES.
    Check this example..
    TYPE-POOLS: vrm.
    PARAMETERS: p_test TYPE char4 AS LISTBOX VISIBLE LENGTH 10.
    DATA: t_data TYPE vrm_values.
    INITIALIZATION.
    DATA: s_data TYPE vrm_value.
    <b>***Here you to have to do the select and populate the internal table
    ***t_data.</b>
    s_data-key = 'ABCD'.
    s_data-text = 'First four'.
    APPEND s_data TO t_data.
    s_data-key = 'EFGHI'.
    s_data-text = 'Second four'.
    APPEND s_data TO t_data.
    CALL FUNCTION 'VRM_SET_VALUES'
    EXPORTING
    id = 'P_TEST'
    values = t_data
    EXCEPTIONS
    id_illegal_name = 1
    OTHERS = 2.
    IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    START-OF-SELECTION.
    WRITE: / p_test.
    Thanks,
    Naren

Maybe you are looking for