You need to sign in to do that
Don't have an account?

SAQL error: "Cogroup projection requires stream identifier:"
I cannot figure out why I am getting this error, though I do know that the source is the highlighted generate clause. The query works fine without it, but throws the error with it. (SAQL text below)

Open = load "opportunity";
Open = filter Open by date('CreatedDate_Year', 'CreatedDate_Month', 'CreatedDate_Day') in ["3 years ago".."1 year ahead"];
Open = filter Open by 'IsClosed' == "false";
Open = foreach Open generate sum('Amount') as 'sum_Amount','CreatedDate_Year' as 'CreatedDate_Year','CreatedDate_Year'+"-"+'CreatedDate_Week'as 'Year_Week';
Won = load "opportunity";
Won = filter Won by date('CreatedDate_Year', 'CreatedDate_Month', 'CreatedDate_Day') in ["3 years ago".."1 year ahead"];
Won = filter Won by 'IsWon' == "true";
Won = group Won by ('CloseDate_Year','CloseDate_Week') ;
Won = foreach Won generate 'CloseDate_Year' as 'CloseDate_Year','CloseDate_Week' as 'CloseDate_Week','CloseDate_Year'+"-"+'CloseDate_Week' as 'Year_Week', sum('Amount') as 'sum_Close';
Won = limit Won 2000;
weekgroup = cogroup Open by 'Year_Week' left, Won by 'Year_Week';
Results = foreach weekgroup generate 'Year_Week' as 'Calendar Week', coalesce(sum(Won['sum_Close']), 0) as 'sum_Amount_Closed', coalesce(coalesce(sum(Won['sum_Close']), 0) / sum(Open['sum_Amount']), 0) as 'Percent_Conversion',sum(Open['sum_Amount']) as 'Total Open';
Open = load "opportunity";
Open = filter Open by date('CreatedDate_Year', 'CreatedDate_Month', 'CreatedDate_Day') in ["3 years ago".."1 year ahead"];
Open = filter Open by 'IsClosed' == "false";
Open = foreach Open generate sum('Amount') as 'sum_Amount','CreatedDate_Year' as 'CreatedDate_Year','CreatedDate_Year'+"-"+'CreatedDate_Week'as 'Year_Week';
Won = load "opportunity";
Won = filter Won by date('CreatedDate_Year', 'CreatedDate_Month', 'CreatedDate_Day') in ["3 years ago".."1 year ahead"];
Won = filter Won by 'IsWon' == "true";
Won = group Won by ('CloseDate_Year','CloseDate_Week') ;
Won = foreach Won generate 'CloseDate_Year' as 'CloseDate_Year','CloseDate_Week' as 'CloseDate_Week','CloseDate_Year'+"-"+'CloseDate_Week' as 'Year_Week', sum('Amount') as 'sum_Close';
Won = limit Won 2000;
weekgroup = cogroup Open by 'Year_Week' left, Won by 'Year_Week';
Results = foreach weekgroup generate 'Year_Week' as 'Calendar Week', coalesce(sum(Won['sum_Close']), 0) as 'sum_Amount_Closed', coalesce(coalesce(sum(Won['sum_Close']), 0) / sum(Open['sum_Amount']), 0) as 'Percent_Conversion',sum(Open['sum_Amount']) as 'Total Open';
I found the resolution to this: I needed to reference "Year_Week" as they are in the prior queries, as was done in the elements below. (eg. Won['Year_Week'], etc.
Open = load "opportunity";
Open = filter Open by date('CreatedDate_Year', 'CreatedDate_Month', 'CreatedDate_Day') in ["3 years ago".."1 year ahead"];
Open = filter Open by 'IsClosed' == "false";
Open = foreach Open generate sum('Amount') as 'sum_Amount','CreatedDate_Year' as 'CreatedDate_Year','CreatedDate_Year'+"-"+'CreatedDate_Week'as 'Year_Week';
Won = load "opportunity";
Won = filter Won by date('CreatedDate_Year', 'CreatedDate_Month', 'CreatedDate_Day') in ["3 years ago".."1 year ahead"];
Won = filter Won by 'IsWon' == "true";
Won = group Won by ('CloseDate_Year','CloseDate_Week') ;
Won = foreach Won generate 'CloseDate_Year' as 'CloseDate_Year','CloseDate_Week' as 'CloseDate_Week','CloseDate_Year'+"-"+'CloseDate_Week' as 'Year_Week', sum('Amount') as 'sum_Close';
Won = limit Won 2000;
weekgroup = cogroup Open by 'Year_Week' left, Won by 'Year_Week';
Results = foreach weekgroup generate Won['Year_Week'] as 'Calendar Week', coalesce(sum(Won['sum_Close']), 0) as 'sum_Amount_Closed', coalesce(coalesce(sum(Won['sum_Close']), 0) / sum(Open['sum_Amount']), 0) as 'Percent_Conversion',sum(Open['sum_Amount']) as 'Total Open';