Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Problem in comparing a character variable to date value.

Former Member
0 Kudos

Hi All,

I have a scenario where I am comparing a variable of type c with a database field which is a date.Now the comparison is failing though it should not.I can't change the variable because I am capturing that from Line selection ie through get cursor.

So is there any FM or any other way through which i can change this value to database field value type.

Also variable has date in format 17.12.207 where as in table it is stored as 20071217 i.e YYYYMMDD.

Thanks in Advance,

Saket.

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi saket,

Use as the code below;

data : chr_date(10) type c value '12.12.2007'.
data : lf_date type d.


CALL FUNCTION 'CONVERT_DATE_TO_INTERNAL'
  EXPORTING
    date_external                  = chr_date
 IMPORTING
   DATE_INTERNAL                  = lf_date.

Now you can compare lf_date with database date field.

Revert back if u have any doubts.

Regards

Karthik D

Edited by: Karthik D on Sep 20, 2008 7:53 PM

3 REPLIES 3

Former Member
0 Kudos

you need to take a type d field and filll that using offiset and then compare with the database date

Former Member
0 Kudos

instead of get cursor.

you can use this

read line sy-lilli field value <tab-fieldname> into <variable>

Former Member
0 Kudos

Hi saket,

Use as the code below;

data : chr_date(10) type c value '12.12.2007'.
data : lf_date type d.


CALL FUNCTION 'CONVERT_DATE_TO_INTERNAL'
  EXPORTING
    date_external                  = chr_date
 IMPORTING
   DATE_INTERNAL                  = lf_date.

Now you can compare lf_date with database date field.

Revert back if u have any doubts.

Regards

Karthik D

Edited by: Karthik D on Sep 20, 2008 7:53 PM