SQL Server administration and T-SQL development, Web Programming with ASP.NET, HTML5 and Javascript, Windows Phone 8 app development, SAP Smartforms and ABAP Programming, Windows 7, Visual Studio and MS Office software
Development resources, articles, tutorials, code samples, tools and downloads for SAP HANA and ABAP, HANA Database, SQLScript, SAP UI5, Screen Personas, Web Dynpro, Workflow


ABAP Tutorial - How to Set Default Date Range in SAP Selection Screen for Date Parameter


In this ABAP tutorial, I will short a simple ABAP report to show how ABAP developers can define a default date range in SELECTION SCREEN for a Select Option.
You can also see in the example how you can set default values for other select options.
Those other Select Options whose default values are set : VBELN number range for Sales Orders, AUART Sales Order Type for Sales Orders.

The below SAP screen is showing the SELECT Options placed in an SAP Selection Screen.
As you can realize the ERDAT select option has a date range with default date range value.
The low and high options of the date range are set.

In this ABAP sample, you can also find ABAP code to add days to a date variable.

set-default-date-range-in-sap-selection-screen





Please note that the s_erdat date range select option is simply defined as :
s_erdat FOR vbak-erdat OBLIGATORY
You can omit Obligatory of course if erdat variable is not a required input from the user.
But pay attention that there is no value range definition related with erdat in the SELECT-OPTIONS definition.

SELECTION-SCREEN BEGIN OF BLOCK block-1 WITH FRAME TITLE text-001.

SELECT-OPTIONS :
  s_vbeln FOR vbak-vbeln DEFAULT '1500000000' TO '1599999999' OBLIGATORY,
  s_auart FOR vbak-auart DEFAULT 'OR' OBLIGATORY,
  s_erdat FOR vbak-erdat OBLIGATORY,
  s_vsbed FOR vbak-vsbed,
  s_vkorg FOR vbak-vkorg. "OBLIGATORY.

SELECTION-SCREEN END OF BLOCK block-1.
Code

And just after the SELECTION-SCREEN block codes are completed, add the following Initialization code block.
In the Initialization ABAP code section, ABAP developers can create a local date range variable lv_date.
And in order to get the 7 days prior date from today, or to calculate the date of a week before simply substract 7 days from today, sy-datum.

Then the values of the s_erdat select option parameter are set.
Set the s_erdat-option to 'BT' for between.
Set s_erdat-low and high values.
And the last ABAP statement is APPEND s_erdat in order to pass the date range values to the erdat selection option which is displayed on the selection screen.

INITIALIZATION.

  DATA lv_date TYPE sy-datum.

  lv_date = sy-datum - 7.

  MOVE: 'BT' TO s_erdat-option,
    lv_date TO s_erdat-low,
    sy-datum TO s_erdat-high.
  APPEND s_erdat.
Code

Using the SELECTION-SCREEN declaration and the Select Option declaration shown as above with the Initialization code block, it is easy for ABAP programmers to create date range select option variables with default values.

I hope ABAP programmers will find this sample ABAP program useful.



SAP HANA and ABAP

Install SAP Free
CRM Companies List
Web Based CRM Software


Copyright © 2004 - 2021 Eralper YILMAZ. All rights reserved.