Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi All
i have problem with my do while looop .Its not exiting as per requirement ..Here is my code .
My loop has to end on weekend of 30th july 2015 i.e 05-07-2015.
But it is not ending there but loop seems to continuous .
LET vStartDateKey = makedate(2015,06,25);
LET vEndDateKey = MakeDate(2015,06,30);
let vweekstart = num(num#(WeekStart(vStartDateKey)));
let vweekend = num(Num#(WeekStart(vEndDateKey)));
do while weekstart(vStartDateKey)<=Weekend(vEndDateKey)
let vnewweekend =date(date#(vweekstart)+6);
FCT_SALES:
SELECT
DATE_KEY,
SALES_DATE,
STORE_KEY,
DEPT_KEY
WHERE
DATE_KEY BETWEEN '$(vweekstart)' AND '$(vnewweekend)';
let file = Year(date#(vweekstart))&week(date#(vweekstart));
trace file= $(file);
//Store and Drop Table
STORE FCT_DAILY_SALES INTO [./Qvd/$(file).QVD];
DROP TABLE FCT_SALES;
let vweekstart = date(date#(vweekstart)+7);
LOOP;
try like this. its working for me
LET vStartDateKey = num(Date#('2015-06-25','YYYY-MM-DD'));
LET vEndDateKey = num(Date#('2015-06-30','YYYY-MM-DD'));
let vweekstart = num(WeekStart('$(vStartDateKey)'));
let vweekend = num(WeekStart('$(vEndDateKey)')+6);
do while vweekstart <= vweekend
let vnewweekend =num('$(vweekstart)'+6);
FCT_SALES:
SELECT
DATE_KEY,
SALES_DATE,
STORE_KEY,
DEPT_KEY
WHERE
DATE_KEY BETWEEN '$(vweekstart)' AND '$(vnewweekend)';
let file = Year('$(vweekstart)')&week('$(vnewweekend)');
trace file= $(file);
//Store and Drop Table
STORE FCT_SALES INTO [./Qvd/$(file).QVD];
DROP TABLE FCT_SALES;
let vweekstart = num('$(vweekstart)'+7);
LOOP;