2009 Mar 06 5:43 AM
Hi Friends, I have 1 problem here
I m prescribing my coding and logic as following:
DATA: KYEAR(4) TYPE C,
NYEAR(4) TYPE C,
KYEAR = SY-DATUM+0(4),
NYEAR = SYEAR - 1 .
IF SYEAR EQ KYEAR AND SMONTH < 4.
SELECT APERNR ASMONTH ASYEAR AAPF AVPF AEPF
BTMONTH BTYEAR BEMPLOYEEPF BEMPLOYERPF
FROM ( ZUPWARDHAWOR AS A INNER JOIN ZTRANS_ENTRY AS B
ON APERNR = BPERNR )
INTO CORRESPONDING FIELDS OF BODY1
WHERE A~SYEAR BETWEEN NYEAR AND SYEAR
AND A~SMONTH BETWEEN '04' AND SMONTH
AND A~PERNR = SMF1-PERNR AND
B~PERNR = SMF1-PERNR "AND
BTMONTH = ASMONTH AND
BTYEAR = ASYEAR
ORDER BY ASYEAR ASMONTH ASCENDING .
APPEND BODY1.
COUNT = COUNT + 1.
ENDSELECT.
Month name is SMONTH year is SYEAR.
I need when i put JAN 2009 OR Feb 2009 the data should be select from APRIL 2008 to Jan 2009 or Feb 2009.
But according to my logic the data is selecting when i hide month from WHERE condition.
It is selected data from jan2008 to jan 2009. But i want Aprill 2008 to till current month and year.
Plz try to solve it soon.
Regards,
Swapnika
2009 Mar 06 5:58 AM
Hi ,
please stop posting duplicate threads:
Reported
IF SYEAR EQ KYEAR AND SMONTH < 4.
SELECT APERNR ASMONTH ASYEAR AAPF AVPF AEPF
BTMONTH BTYEAR BEMPLOYEEPF BEMPLOYERPF
FROM ( ZUPWARDHAWOR AS A INNER JOIN ZTRANS_ENTRY AS B
ON APERNR = BPERNR )
INTO CORRESPONDING FIELDS OF BODY1
WHERE
( ( ASYEAR = NYEAR AND ASMONTH > '04' ) or
( ASYEAR = SYEAR AND ASMONTH < S_month) )
AND A~PERNR = SMF1-PERNR AND
B~PERNR = SMF1-PERNR "AND
BTMONTH = ASMONTH AND
BTYEAR = ASYEAR
ORDER BY ASYEAR ASMONTH ASCENDING .
Edited by: Dev Parbutteea on Mar 6, 2009 7:00 AM
Do not keep posting the same question. I've deleted the ones you posted earlier. It is unfair on those who answer your query if you keep opening the same question.
2009 Mar 06 5:52 AM
Hi,
Build the range table and use in Selcet quesy
R_YEAR-sign = 'I'.
R_YEAR-option = 'BT'.
R_YEAR-LOW = NYEAR.
R_YEAR-HIGH= SYEAR.
Append r_YEAR.
R_MONTH-sign = 'I'.
R_MONTH-option = 'BT'.
R_MONTH-LOW = '04'.
R_MONTH-HIGH= SMONTH.
Append r_MONTH.
SELECT A~PERNR A~SMONTH A~SYEAR A~APF A~VPF A~EPF
B~TMONTH B~TYEAR B~EMPLOYEEPF B~EMPLOYERPF
FROM ( ZUPWARDHAWOR AS A INNER JOIN ZTRANS_ENTRY AS B
ON A~PERNR = B~PERNR )
INTO CORRESPONDING FIELDS OF BODY1
WHERE A~SYEAR In R_YEAR " BETWEEN NYEAR AND SYEAR
AND A~SMONTH IN R_MONTH " BETWEEN '04' AND SMONTH
AND A~PERNR = SMF1-PERNR AND
B~PERNR = SMF1-PERNR "AND
B~TMONTH = A~SMONTH AND
B~TYEAR = A~SYEAR
ORDER BY A~SYEAR A~SMONTH ASCENDING .
2009 Mar 06 5:58 AM
Hi ,
please stop posting duplicate threads:
Reported
IF SYEAR EQ KYEAR AND SMONTH < 4.
SELECT APERNR ASMONTH ASYEAR AAPF AVPF AEPF
BTMONTH BTYEAR BEMPLOYEEPF BEMPLOYERPF
FROM ( ZUPWARDHAWOR AS A INNER JOIN ZTRANS_ENTRY AS B
ON APERNR = BPERNR )
INTO CORRESPONDING FIELDS OF BODY1
WHERE
( ( ASYEAR = NYEAR AND ASMONTH > '04' ) or
( ASYEAR = SYEAR AND ASMONTH < S_month) )
AND A~PERNR = SMF1-PERNR AND
B~PERNR = SMF1-PERNR "AND
BTMONTH = ASMONTH AND
BTYEAR = ASYEAR
ORDER BY ASYEAR ASMONTH ASCENDING .
Edited by: Dev Parbutteea on Mar 6, 2009 7:00 AM
2009 Mar 06 9:02 AM
Do not keep posting the same question. I've deleted the ones you posted earlier. It is unfair on those who answer your query if you keep opening the same question.
| User | Count |
|---|---|
| 6 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |