Hi everyone, I´m having some problems with the ProjSalesPriceHour DataSource.
I´m modifying the data range in the init() method of the DataSource. My code
is the following:
void init()
{
Query query;
QueryBuildDataSource qB;
;
super();
switch(element.args().dataset())
{
case(tableNum(ProjTable)):
projHourSalesPrice_ds.autoQuery(false);
query = new Query();
qB = query.addDataSource(tablenum(ProjHourSalesPrice));
criteriaProjId = qB.addRange(fieldnum(ProjHourSalesPrice, projId));
projHourSalesPrice_ds.query(query);
break;
default:
projHourSalesPrice_ds.autoQuery(false);
query = new Query();
qB = query.addDataSource(tablenum(ProjHourSalesPrice));
criteriaProjId = qB.addRange(fieldnum(ProjTable,
GerenteCuenta));
criteriaProjId.value(curUserId());
projHourSalesPrice_ds.query(query);
break;
}
}
The problem is in the default case. I´m trying to show all the records of
ProjHourSalesPrice table where the EmplId of the current session user is the
same as the EmplId of the ProjId table. When I run this I get an invalid
range error.
Basically the SQL query I´m trying to do is this:
SELECT *
FROM PROJHOURSALESPRICE PHS, PROJTABLE P
WHERE P.PROJID = PHS.PROJID AND P.GERENTECUENTA = '**current user Id**'
Any help on how should I write this would be appreciated. Thank you very much![/code]