Michael,
I'm trying to concatenate date and time and here's my ABAP data flow where clause:
CDHDR.OBJECTCLAS in ('DEBI', 'KRED', 'MATERIAL')
and ((CDHDR.UDATE || ' ' || CDHDR.UTIME) > $CDHDR_Last_Run_Date_Time)
and ((CDHDR.UDATE || ' ' || CDHDR.UTIME) <= $Run_Date_Time)
Here are DS print statements showing my global variable values:
$Run_Date_Time is 2014.06.09 14:14:35
$CDHDR_Last_Run_Date_Time is 1900.01.01 00:00:01
The issue is I just created a CDHDR record with a UDATE of '06/09/2014' and UTIME of '10:48:27' and it's not being pulled in the ABAP data flow. Here's selected contents of the generated ABAP file (*.aba):
...
PARAMETER $PARAM1 TYPE D.
PARAMETER $PARAM2 TYPE D.
...
concatenate CDHDR-UDATE ' ' into ALTMP1.
concatenate ALTMP1 CDHDR-UTIME into ALTMP2.
concatenate CDHDR-UDATE ' ' into ALTMP3.
concatenate ALTMP3 CDHDR-UTIME into ALTMP4.
IF ( ( ALTMP4 <= $PARAM2 )
AND ( ALTMP2 > $PARAM1 ) ).
...
So $PARAM1 corresponds to $CDHDR_Last_Run_Date_Time ('1900.01.01 00:00:01') and $PARAM2 corresponds to $Run_Date_Time ('2014.06.09 14:14:35'). But from my understanding ABAP data type D is for date only (YYYYMMDD) and doesn't include time, so is my time somehow being defaulted to '00:00:01' when it gets to DS? I ask this as a CDHDR record I created on 6/6 wasn't pulled during my 6/6 testing but this 6/6 CDHDR record was pulled today.
I can get last_run_date_time and current_run_date_time into separate date and time fields but I'm not sure how to build the where clause using separate date and time fields. Do you have any recommendations or is there a better way for me to pull CDHDR deltas in an ABAP data flow using something different than a last run log table?
Thanks,
Brad