<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Selection screen validation in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464966#M1416140</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Bhanu,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A small modification to Amit's code:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;AT selection screen.

IF s_pharid IS NOT INITIAL. "Add this line
SELECT werks  name1 name2
FROM t001w
INTO TABLE i_temp
WHERE werks IN s_pharid.
 
loop at i_temp.
 
if i_temp-name2(1) NE 'P'.
message e000.
exit.
endloop.
ENDIF.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think you need not take data into an internal table &amp;amp; then process. I wrote this test code &amp;amp; seems to work:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;TABLES t001w.

SELECT-OPTIONS s_werks FOR t001w-werks.

AT SELECTION-SCREEN ON s_werks.
  DATA:
        lst_werks TYPE t001w.

  IF s_werks IS NOT INITIAL.
    SELECT * FROM t001w UP TO 1 ROWS
      INTO lst_werks
      WHERE werks IN s_werks
      AND   name2 LIKE 'P%' OR name2 LIKE 'p%'. "NAME2 is case sensitive, so have to take care accordingly
    ENDSELECT.
    IF  sy-subrc NE 0.
*   Error Message
    ENDIF.
  ENDIF.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR,&lt;/P&gt;&lt;P&gt;Suhas&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Suhas Saha on Dec 17, 2009 9:42 AM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 17 Dec 2009 08:26:38 GMT</pubDate>
    <dc:creator>SuhaSaha</dc:creator>
    <dc:date>2009-12-17T08:26:38Z</dc:date>
    <item>
      <title>Selection screen validation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464962#M1416136</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;I have a field Plant(werks) on my selection screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need to give a error message on selection screen if the name2 of the plant doesnt starts with P.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;how do i do such kind of validation ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i am trying something like this its not working &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT selection screen&lt;/P&gt;&lt;P&gt;  SELECT  werks&lt;/P&gt;&lt;P&gt;          name1&lt;/P&gt;&lt;P&gt;                 name2&lt;/P&gt;&lt;P&gt;   FROM   t001w&lt;/P&gt;&lt;P&gt;   INTO TABLE i_temp&lt;/P&gt;&lt;P&gt;   WHERE   werks IN s_pharid&lt;/P&gt;&lt;P&gt;   AND     name2 &amp;lt;&amp;gt; 'P%'.&lt;/P&gt;&lt;P&gt;IF sy-subrc =  0.&lt;/P&gt;&lt;P&gt;    MESSAGE e000.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bu in the select there also comes the plant which has name2 which doesnt starts with P&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any useful suggestions?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Dec 2009 07:56:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464962#M1416136</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-12-17T07:56:40Z</dc:date>
    </item>
    <item>
      <title>Re: Selection screen validation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464963#M1416137</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Try the bolow code..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT selection screen on '&amp;lt;selection-screen field name&amp;gt;'&lt;/P&gt;&lt;P&gt;SELECT SINGLE werks&lt;/P&gt;&lt;P&gt;name1&lt;/P&gt;&lt;P&gt;name2&lt;/P&gt;&lt;P&gt;FROM t001w&lt;/P&gt;&lt;P&gt;INTO TABLE i_temp&lt;/P&gt;&lt;P&gt;WHERE werks IN s_pharid&lt;/P&gt;&lt;P&gt;AND    name2 LIKE 'P%'.&lt;/P&gt;&lt;P&gt;IF sy-subrc not equal  0.&lt;/P&gt;&lt;P&gt;MESSAGE e000.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: SHRIKANTH R on Dec 17, 2009 9:00 AM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: SHRIKANTH R on Dec 17, 2009 9:03 AM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Dec 2009 08:00:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464963#M1416137</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-12-17T08:00:16Z</dc:date>
    </item>
    <item>
      <title>Re: Selection screen validation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464964#M1416138</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Bhanu,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. We can also validate using itab, instead of using select query directly and using %.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;


AT selection screen
SELECT werks  name1 name2
FROM t001w
INTO TABLE i_temp
WHERE werks IN s_pharid.

loop at i_temp.

if i_temp-name2(1) NE 'P'.
message e000.
exit.
endloop.


&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;amit m.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Dec 2009 08:08:12 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464964#M1416138</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-12-17T08:08:12Z</dc:date>
    </item>
    <item>
      <title>Re: Selection screen validation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464965#M1416139</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Amit,&lt;/P&gt;&lt;P&gt;Thnkx for reply but here is a problem &lt;/P&gt;&lt;P&gt;if i click the option to give multiple range it gives a error message straight forwrd without entering any values &lt;/P&gt;&lt;P&gt;in plants now.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Dec 2009 08:18:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464965#M1416139</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-12-17T08:18:22Z</dc:date>
    </item>
    <item>
      <title>Re: Selection screen validation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464966#M1416140</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Bhanu,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A small modification to Amit's code:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;AT selection screen.

IF s_pharid IS NOT INITIAL. "Add this line
SELECT werks  name1 name2
FROM t001w
INTO TABLE i_temp
WHERE werks IN s_pharid.
 
loop at i_temp.
 
if i_temp-name2(1) NE 'P'.
message e000.
exit.
endloop.
ENDIF.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think you need not take data into an internal table &amp;amp; then process. I wrote this test code &amp;amp; seems to work:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;TABLES t001w.

SELECT-OPTIONS s_werks FOR t001w-werks.

AT SELECTION-SCREEN ON s_werks.
  DATA:
        lst_werks TYPE t001w.

  IF s_werks IS NOT INITIAL.
    SELECT * FROM t001w UP TO 1 ROWS
      INTO lst_werks
      WHERE werks IN s_werks
      AND   name2 LIKE 'P%' OR name2 LIKE 'p%'. "NAME2 is case sensitive, so have to take care accordingly
    ENDSELECT.
    IF  sy-subrc NE 0.
*   Error Message
    ENDIF.
  ENDIF.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR,&lt;/P&gt;&lt;P&gt;Suhas&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Suhas Saha on Dec 17, 2009 9:42 AM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Dec 2009 08:26:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464966#M1416140</guid>
      <dc:creator>SuhaSaha</dc:creator>
      <dc:date>2009-12-17T08:26:38Z</dc:date>
    </item>
    <item>
      <title>Re: Selection screen validation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464967#M1416141</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Bhanu&lt;/P&gt;&lt;P&gt;You try this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;AT selection screen &amp;lt; field name &amp;gt;      "Plant in your case
SELECT SINGLE WERKS
NAME1
NAME2
FROM T001W
INTO TABLE i_temp
WHERE werks IN s_pharid
AND name2 LIKE 'P%'.
IF sy-subrc not equal 0.              " If no data, then error
MESSAGE e000.
ENDIF.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Dec 2009 08:30:23 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464967#M1416141</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-12-17T08:30:23Z</dc:date>
    </item>
    <item>
      <title>Re: Selection screen validation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464968#M1416142</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Bhanu,&lt;/P&gt;&lt;P&gt;When you have select options a runtime range internal table is generated with the same name as the select option field .&lt;/P&gt;&lt;P&gt;this internal table contains SIGN, OPTION, LOW, and HIGH. fields so if you access and check it at AT-SELECTION-SCREEN. event it would be possible whithout accessing the data base .....&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Dec 2009 08:39:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464968#M1416142</guid>
      <dc:creator>anup_deshmukh4</dc:creator>
      <dc:date>2009-12-17T08:39:08Z</dc:date>
    </item>
    <item>
      <title>Re: Selection screen validation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464969#M1416143</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Bhanu,&lt;/P&gt;&lt;P&gt;               Try using the following code this will help:-&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;PARAMETERS       : name2  LIKE t001w-name2.

data: name(1).
AT SELECTION-SCREEN output.

  if name2 is not initial.
     condense name2 no-gaps.
   name = name2+0(1) .
   TRANSLATE NAME TO UPPER CASE.
  if name NE 'P'.
  &amp;lt; type error message here&amp;gt;
endif.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you need any further help do let me know.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ankita&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Dec 2009 10:13:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464969#M1416143</guid>
      <dc:creator>former_member936723</dc:creator>
      <dc:date>2009-12-17T10:13:08Z</dc:date>
    </item>
    <item>
      <title>Re: Selection screen validation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464970#M1416144</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thats right. It will give message because we are using that event.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Normally I use START-OF-SELECTION event.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Like this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;

START-OF-SELECTION.

SELECT werks  name1 name2
FROM t001w
INTO TABLE i_temp
WHERE werks IN s_pharid.
 
loop at i_temp.
 
if i_temp-name2(1) NE 'P'.
message I000.
leave list-processing.
endloop.


&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Important point:&lt;/P&gt;&lt;P&gt;1. message should be of type I or W (Not E, other wise it will come out)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. The statement &lt;STRONG&gt;leave list-processing&lt;/STRONG&gt; is important.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;amit m.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Dec 2009 11:32:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/selection-screen-validation/m-p/6464970#M1416144</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-12-17T11:32:05Z</dc:date>
    </item>
  </channel>
</rss>

