mirror of
https://github.com/acanas/swad-core.git
synced 2024-05-28 12:33:26 +02:00
Version 20.50.11: Mar 17, 2021 Departments database table renamed.
This commit is contained in:
parent
f3f1f54c65
commit
9ea76aeebd
|
@ -393,9 +393,9 @@ CREATE TABLE IF NOT EXISTS deg_types (
|
||||||
DegTypName VARCHAR(511) NOT NULL,
|
DegTypName VARCHAR(511) NOT NULL,
|
||||||
UNIQUE INDEX(DegTypCod));
|
UNIQUE INDEX(DegTypCod));
|
||||||
--
|
--
|
||||||
-- Table departments: stores the departments
|
-- Table dpt_departments: stores the departments
|
||||||
--
|
--
|
||||||
CREATE TABLE IF NOT EXISTS departments (
|
CREATE TABLE IF NOT EXISTS dpt_departments (
|
||||||
DptCod INT NOT NULL AUTO_INCREMENT,
|
DptCod INT NOT NULL AUTO_INCREMENT,
|
||||||
InsCod INT NOT NULL,
|
InsCod INT NOT NULL,
|
||||||
ShortName VARCHAR(511) NOT NULL,
|
ShortName VARCHAR(511) NOT NULL,
|
||||||
|
|
|
@ -600,12 +600,16 @@ TODO: Salvador Romero Cort
|
||||||
|
|
||||||
TODO: FIX BUG, URGENT! En las fechas como parámetro Dat_WriteParamsIniEndDates(), por ejemplo al cambiar el color de la gráfica de accesos por día y hora, no se respeta la zona horaria.
|
TODO: FIX BUG, URGENT! En las fechas como parámetro Dat_WriteParamsIniEndDates(), por ejemplo al cambiar el color de la gráfica de accesos por día y hora, no se respeta la zona horaria.
|
||||||
*/
|
*/
|
||||||
#define Log_PLATFORM_VERSION "SWAD 20.50.10 (2021-03-17)"
|
#define Log_PLATFORM_VERSION "SWAD 20.50.11 (2021-03-17)"
|
||||||
#define CSS_FILE "swad20.45.css"
|
#define CSS_FILE "swad20.45.css"
|
||||||
#define JS_FILE "swad20.6.2.js"
|
#define JS_FILE "swad20.6.2.js"
|
||||||
/*
|
/*
|
||||||
TODO: Rename CENTRE to CENTER in help wiki.
|
TODO: Rename CENTRE to CENTER in help wiki.
|
||||||
|
|
||||||
|
Version 20.50.11: Mar 17, 2021 Departments database table renamed. (307450 lines)
|
||||||
|
1 change necessary in database:
|
||||||
|
RENAME TABLE departments TO dpt_departments;
|
||||||
|
|
||||||
Version 20.50.10: Mar 17, 2021 Connected database table renamed. (307415 lines)
|
Version 20.50.10: Mar 17, 2021 Connected database table renamed. (307415 lines)
|
||||||
1 change necessary in database:
|
1 change necessary in database:
|
||||||
RENAME TABLE connected TO usr_connected;
|
RENAME TABLE connected TO usr_connected;
|
||||||
|
|
|
@ -880,9 +880,9 @@ mysql> DESCRIBE deg_degrees;
|
||||||
"INDEX(DegTypCod),"
|
"INDEX(DegTypCod),"
|
||||||
"INDEX(Status))");
|
"INDEX(Status))");
|
||||||
|
|
||||||
/***** Table departments *****/
|
/***** Table dpt_departments *****/
|
||||||
/*
|
/*
|
||||||
mysql> DESCRIBE departments;
|
mysql> DESCRIBE dpt_departments;
|
||||||
+-----------+---------------+------+-----+---------+----------------+
|
+-----------+---------------+------+-----+---------+----------------+
|
||||||
| Field | Type | Null | Key | Default | Extra |
|
| Field | Type | Null | Key | Default | Extra |
|
||||||
+-----------+---------------+------+-----+---------+----------------+
|
+-----------+---------------+------+-----+---------+----------------+
|
||||||
|
@ -894,7 +894,7 @@ mysql> DESCRIBE departments;
|
||||||
+-----------+---------------+------+-----+---------+----------------+
|
+-----------+---------------+------+-----+---------+----------------+
|
||||||
5 rows in set (0,00 sec)
|
5 rows in set (0,00 sec)
|
||||||
*/
|
*/
|
||||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS departments ("
|
DB_CreateTable ("CREATE TABLE IF NOT EXISTS dpt_departments ("
|
||||||
"DptCod INT NOT NULL AUTO_INCREMENT,"
|
"DptCod INT NOT NULL AUTO_INCREMENT,"
|
||||||
"InsCod INT NOT NULL,"
|
"InsCod INT NOT NULL,"
|
||||||
"ShortName VARCHAR(511) NOT NULL," // Cns_HIERARCHY_MAX_BYTES_SHRT_NAME
|
"ShortName VARCHAR(511) NOT NULL," // Cns_HIERARCHY_MAX_BYTES_SHRT_NAME
|
||||||
|
|
|
@ -339,36 +339,39 @@ static void Dpt_GetListDepartments (struct Dpt_Departments *Departments,long Ins
|
||||||
{
|
{
|
||||||
/***** Get departments from database *****/
|
/***** Get departments from database *****/
|
||||||
Departments->Num = (unsigned)
|
Departments->Num = (unsigned)
|
||||||
DB_QuerySELECT (&mysql_res,"can not get departments",
|
DB_QuerySELECT (&mysql_res,"can not get departments",
|
||||||
"(SELECT departments.DptCod," // row[0]
|
"(SELECT dpt_departments.DptCod," // row[0]
|
||||||
"departments.InsCod," // row[1]
|
"dpt_departments.InsCod," // row[1]
|
||||||
"departments.ShortName," // row[2]
|
"dpt_departments.ShortName," // row[2]
|
||||||
"departments.FullName," // row[3]
|
"dpt_departments.FullName," // row[3]
|
||||||
"departments.WWW," // row[4]
|
"dpt_departments.WWW," // row[4]
|
||||||
"COUNT(DISTINCT usr_data.UsrCod) AS NumTchs" // row[5]
|
"COUNT(DISTINCT usr_data.UsrCod) AS NumTchs" // row[5]
|
||||||
" FROM departments,usr_data,crs_usr"
|
" FROM dpt_departments,"
|
||||||
" WHERE departments.InsCod=%ld"
|
"usr_data,"
|
||||||
" AND departments.DptCod=usr_data.DptCod"
|
"crs_usr"
|
||||||
" AND usr_data.UsrCod=crs_usr.UsrCod"
|
" WHERE dpt_departments.InsCod=%ld"
|
||||||
" AND crs_usr.Role IN (%u,%u)"
|
" AND dpt_departments.DptCod=usr_data.DptCod"
|
||||||
" GROUP BY departments.DptCod)"
|
" AND usr_data.UsrCod=crs_usr.UsrCod"
|
||||||
" UNION "
|
" AND crs_usr.Role IN (%u,%u)"
|
||||||
"(SELECT DptCod," // row[0]
|
" GROUP BY dpt_departments.DptCod)"
|
||||||
"InsCod," // row[1]
|
" UNION "
|
||||||
"ShortName," // row[2]
|
"(SELECT DptCod," // row[0]
|
||||||
"FullName," // row[3]
|
"InsCod," // row[1]
|
||||||
"WWW," // row[4]
|
"ShortName," // row[2]
|
||||||
"0 AS NumTchs" // row[5]
|
"FullName," // row[3]
|
||||||
" FROM departments"
|
"WWW," // row[4]
|
||||||
" WHERE InsCod=%ld AND DptCod NOT IN"
|
"0 AS NumTchs" // row[5]
|
||||||
" (SELECT DISTINCT usr_data.DptCod"
|
" FROM dpt_departments"
|
||||||
" FROM usr_data,crs_usr"
|
" WHERE InsCod=%ld"
|
||||||
" WHERE crs_usr.Role IN (%u,%u)"
|
" AND DptCod NOT IN"
|
||||||
" AND crs_usr.UsrCod=usr_data.UsrCod))"
|
" (SELECT DISTINCT usr_data.DptCod"
|
||||||
" ORDER BY %s",
|
" FROM usr_data,crs_usr"
|
||||||
InsCod,(unsigned) Rol_NET,(unsigned) Rol_TCH,
|
" WHERE crs_usr.Role IN (%u,%u)"
|
||||||
InsCod,(unsigned) Rol_NET,(unsigned) Rol_TCH,
|
" AND crs_usr.UsrCod=usr_data.UsrCod))"
|
||||||
OrderBySubQuery[Departments->SelectedOrder]);
|
" ORDER BY %s",
|
||||||
|
InsCod,(unsigned) Rol_NET,(unsigned) Rol_TCH,
|
||||||
|
InsCod,(unsigned) Rol_NET,(unsigned) Rol_TCH,
|
||||||
|
OrderBySubQuery[Departments->SelectedOrder]);
|
||||||
if (Departments->Num) // Departments found...
|
if (Departments->Num) // Departments found...
|
||||||
{
|
{
|
||||||
/***** Create list with courses in degree *****/
|
/***** Create list with courses in degree *****/
|
||||||
|
@ -436,23 +439,37 @@ void Dpt_GetDataOfDepartmentByCod (struct Dpt_Department *Dpt)
|
||||||
else if (Dpt->DptCod > 0)
|
else if (Dpt->DptCod > 0)
|
||||||
{
|
{
|
||||||
/***** Get data of a department from database *****/
|
/***** Get data of a department from database *****/
|
||||||
NumRows = DB_QuerySELECT (&mysql_res,"can not get data of a department",
|
NumRows =
|
||||||
"(SELECT departments.InsCod,departments.ShortName,departments.FullName,departments.WWW,"
|
DB_QuerySELECT (&mysql_res,"can not get data of a department",
|
||||||
"COUNT(DISTINCT usr_data.UsrCod) AS NumTchs"
|
"(SELECT dpt_departments.InsCod," // row[0]
|
||||||
" FROM departments,usr_data,crs_usr"
|
"dpt_departments.ShortName," // row[1]
|
||||||
" WHERE departments.DptCod=%ld"
|
"dpt_departments.FullName," // row[2]
|
||||||
" AND departments.DptCod=usr_data.DptCod"
|
"dpt_departments.WWW," // row[3]
|
||||||
" AND usr_data.UsrCod=crs_usr.UsrCod"
|
"COUNT(DISTINCT usr_data.UsrCod) AS NumTchs" // row[4]
|
||||||
" AND crs_usr.Role=%u"
|
" FROM dpt_departments,"
|
||||||
" GROUP BY departments.DptCod)"
|
"usr_data,"
|
||||||
" UNION "
|
"crs_usr"
|
||||||
"(SELECT InsCod,ShortName,FullName,WWW,0"
|
" WHERE dpt_departments.DptCod=%ld"
|
||||||
" FROM departments"
|
" AND dpt_departments.DptCod=usr_data.DptCod"
|
||||||
" WHERE DptCod=%ld AND DptCod NOT IN"
|
" AND usr_data.UsrCod=crs_usr.UsrCod"
|
||||||
" (SELECT DISTINCT usr_data.DptCod FROM usr_data,crs_usr"
|
" AND crs_usr.Role=%u"
|
||||||
" WHERE crs_usr.Role=%u AND crs_usr.UsrCod=usr_data.UsrCod))",
|
" GROUP BY dpt_departments.DptCod)"
|
||||||
Dpt->DptCod,(unsigned) Rol_TCH,
|
" UNION "
|
||||||
Dpt->DptCod,(unsigned) Rol_TCH);
|
"(SELECT InsCod," // row[0]
|
||||||
|
"ShortName," // row[1]
|
||||||
|
"FullName," // row[2]
|
||||||
|
"WWW," // row[3]
|
||||||
|
"0" // row[4]
|
||||||
|
" FROM dpt_departments"
|
||||||
|
" WHERE DptCod=%ld"
|
||||||
|
" AND DptCod NOT IN"
|
||||||
|
" (SELECT DISTINCT usr_data.DptCod"
|
||||||
|
" FROM usr_data,"
|
||||||
|
"crs_usr"
|
||||||
|
" WHERE crs_usr.Role=%u"
|
||||||
|
" AND crs_usr.UsrCod=usr_data.UsrCod))",
|
||||||
|
Dpt->DptCod,(unsigned) Rol_TCH,
|
||||||
|
Dpt->DptCod,(unsigned) Rol_TCH);
|
||||||
if (NumRows) // Department found...
|
if (NumRows) // Department found...
|
||||||
{
|
{
|
||||||
/* Get row */
|
/* Get row */
|
||||||
|
@ -498,12 +515,11 @@ void Dpt_FreeListDepartments (struct Dpt_Departments *Departments)
|
||||||
unsigned Dpt_GetNumDepartmentsInInstitution (long InsCod)
|
unsigned Dpt_GetNumDepartmentsInInstitution (long InsCod)
|
||||||
{
|
{
|
||||||
/***** Get number of departments in an institution from database *****/
|
/***** Get number of departments in an institution from database *****/
|
||||||
return
|
return (unsigned)
|
||||||
(unsigned) DB_QueryCOUNT ("can not get number of departments"
|
DB_QueryCOUNT ("can not get number of departments in an institution",
|
||||||
" in an institution",
|
"SELECT COUNT(*) FROM dpt_departments"
|
||||||
"SELECT COUNT(*) FROM departments"
|
" WHERE InsCod=%ld",
|
||||||
" WHERE InsCod=%ld",
|
InsCod);
|
||||||
InsCod);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -661,7 +677,8 @@ void Dpt_RemoveDepartment (void)
|
||||||
{
|
{
|
||||||
/***** Remove department *****/
|
/***** Remove department *****/
|
||||||
DB_QueryDELETE ("can not remove a department",
|
DB_QueryDELETE ("can not remove a department",
|
||||||
"DELETE FROM departments WHERE DptCod=%ld",
|
"DELETE FROM dpt_departments"
|
||||||
|
" WHERE DptCod=%ld",
|
||||||
Dpt_EditingDpt->DptCod);
|
Dpt_EditingDpt->DptCod);
|
||||||
|
|
||||||
/***** Write message to show the change made *****/
|
/***** Write message to show the change made *****/
|
||||||
|
@ -695,8 +712,11 @@ void Dpt_ChangeDepartIns (void)
|
||||||
|
|
||||||
/***** Update institution in table of departments *****/
|
/***** Update institution in table of departments *****/
|
||||||
DB_QueryUPDATE ("can not update the institution of a department",
|
DB_QueryUPDATE ("can not update the institution of a department",
|
||||||
"UPDATE departments SET InsCod=%ld WHERE DptCod=%ld",
|
"UPDATE dpt_departments"
|
||||||
NewInsCod,Dpt_EditingDpt->DptCod);
|
" SET InsCod=%ld"
|
||||||
|
" WHERE DptCod=%ld",
|
||||||
|
NewInsCod,
|
||||||
|
Dpt_EditingDpt->DptCod);
|
||||||
|
|
||||||
/***** Write message to show the change made *****/
|
/***** Write message to show the change made *****/
|
||||||
Ale_CreateAlert (Ale_SUCCESS,NULL,
|
Ale_CreateAlert (Ale_SUCCESS,NULL,
|
||||||
|
@ -812,11 +832,12 @@ static void Dpt_RenameDepartment (Cns_ShrtOrFullName_t ShrtOrFullName)
|
||||||
static bool Dpt_CheckIfDepartmentNameExists (const char *FieldName,const char *Name,long DptCod)
|
static bool Dpt_CheckIfDepartmentNameExists (const char *FieldName,const char *Name,long DptCod)
|
||||||
{
|
{
|
||||||
/***** Get number of departments with a name from database *****/
|
/***** Get number of departments with a name from database *****/
|
||||||
return (DB_QueryCOUNT ("can not check if the name"
|
return (DB_QueryCOUNT ("can not check if the department name already existed",
|
||||||
" of a department already existed",
|
"SELECT COUNT(*) FROM dpt_departments"
|
||||||
"SELECT COUNT(*) FROM departments"
|
" WHERE %s='%s'"
|
||||||
" WHERE %s='%s' AND DptCod<>%ld",
|
" AND DptCod<>%ld",
|
||||||
FieldName,Name,DptCod) != 0);
|
FieldName,Name,
|
||||||
|
DptCod) != 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -827,8 +848,11 @@ static void Dpt_UpdateDegNameDB (long DptCod,const char *FieldName,const char *N
|
||||||
{
|
{
|
||||||
/***** Update department changing old name by new name *****/
|
/***** Update department changing old name by new name *****/
|
||||||
DB_QueryUPDATE ("can not update the name of a department",
|
DB_QueryUPDATE ("can not update the name of a department",
|
||||||
"UPDATE departments SET %s='%s' WHERE DptCod=%ld",
|
"UPDATE dpt_departments"
|
||||||
FieldName,NewDptName,DptCod);
|
" SET %s='%s'"
|
||||||
|
" WHERE DptCod=%ld",
|
||||||
|
FieldName,NewDptName,
|
||||||
|
DptCod);
|
||||||
}
|
}
|
||||||
|
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
||||||
|
@ -858,8 +882,11 @@ void Dpt_ChangeDptWWW (void)
|
||||||
{
|
{
|
||||||
/* Update the table changing old WWW by new WWW */
|
/* Update the table changing old WWW by new WWW */
|
||||||
DB_QueryUPDATE ("can not update the web of a department",
|
DB_QueryUPDATE ("can not update the web of a department",
|
||||||
"UPDATE departments SET WWW='%s' WHERE DptCod=%ld",
|
"UPDATE dpt_departments"
|
||||||
NewWWW,Dpt_EditingDpt->DptCod);
|
" SET WWW='%s'"
|
||||||
|
" WHERE DptCod=%ld",
|
||||||
|
NewWWW,
|
||||||
|
Dpt_EditingDpt->DptCod);
|
||||||
|
|
||||||
/***** Write message to show the change made *****/
|
/***** Write message to show the change made *****/
|
||||||
Ale_CreateAlert (Ale_SUCCESS,NULL,
|
Ale_CreateAlert (Ale_SUCCESS,NULL,
|
||||||
|
@ -1060,11 +1087,14 @@ static void Dpt_CreateDepartment (struct Dpt_Department *Dpt)
|
||||||
{
|
{
|
||||||
/***** Create a new department *****/
|
/***** Create a new department *****/
|
||||||
DB_QueryINSERT ("can not create a new department",
|
DB_QueryINSERT ("can not create a new department",
|
||||||
"INSERT INTO departments"
|
"INSERT INTO dpt_departments"
|
||||||
" (InsCod,ShortName,FullName,WWW)"
|
" (InsCod,ShortName,FullName,WWW)"
|
||||||
" VALUES"
|
" VALUES"
|
||||||
" (%ld,'%s','%s','%s')",
|
" (%ld,'%s','%s','%s')",
|
||||||
Dpt->InsCod,Dpt->ShrtName,Dpt->FullName,Dpt->WWW);
|
Dpt->InsCod,
|
||||||
|
Dpt->ShrtName,
|
||||||
|
Dpt->FullName,
|
||||||
|
Dpt->WWW);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -1099,12 +1129,11 @@ unsigned Dpt_GetNumDptsInIns (long InsCod)
|
||||||
|
|
||||||
/***** 3. Slow: number of departments of an institution from database *****/
|
/***** 3. Slow: number of departments of an institution from database *****/
|
||||||
Gbl.Cache.NumDptsInIns.InsCod = InsCod;
|
Gbl.Cache.NumDptsInIns.InsCod = InsCod;
|
||||||
Gbl.Cache.NumDptsInIns.NumDpts =
|
Gbl.Cache.NumDptsInIns.NumDpts = (unsigned)
|
||||||
(unsigned) DB_QueryCOUNT ("can not get number of departments"
|
DB_QueryCOUNT ("can not get number of departments in an institution",
|
||||||
" in an institution",
|
"SELECT COUNT(*) FROM departments"
|
||||||
"SELECT COUNT(*) FROM departments"
|
" WHERE InsCod=%ld",
|
||||||
" WHERE InsCod=%ld",
|
InsCod);
|
||||||
InsCod);
|
|
||||||
return Gbl.Cache.NumDptsInIns.NumDpts;
|
return Gbl.Cache.NumDptsInIns.NumDpts;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2832,7 +2832,7 @@ static void Prj_GetListProjects (struct Prj_Projects *Projects)
|
||||||
[Prj_ORDER_TITLE ] = "projects.Title,"
|
[Prj_ORDER_TITLE ] = "projects.Title,"
|
||||||
"projects.CreatTime DESC,"
|
"projects.CreatTime DESC,"
|
||||||
"projects.ModifTime DESC",
|
"projects.ModifTime DESC",
|
||||||
[Prj_ORDER_DEPARTMENT] = "departments.FullName,"
|
[Prj_ORDER_DEPARTMENT] = "dpt_departments.FullName,"
|
||||||
"projects.CreatTime DESC,"
|
"projects.CreatTime DESC,"
|
||||||
"projects.ModifTime DESC,"
|
"projects.ModifTime DESC,"
|
||||||
"projects.Title",
|
"projects.Title",
|
||||||
|
@ -2930,11 +2930,12 @@ static void Prj_GetListProjects (struct Prj_Projects *Projects)
|
||||||
case Prj_ORDER_TITLE:
|
case Prj_ORDER_TITLE:
|
||||||
NumRows = DB_QuerySELECT (&mysql_res,"can not get projects",
|
NumRows = DB_QuerySELECT (&mysql_res,"can not get projects",
|
||||||
"SELECT projects.PrjCod"
|
"SELECT projects.PrjCod"
|
||||||
" FROM projects,prj_usr"
|
" FROM projects,"
|
||||||
|
"prj_usr"
|
||||||
" WHERE projects.CrsCod=%ld"
|
" WHERE projects.CrsCod=%ld"
|
||||||
"%s%s%s"
|
"%s%s%s"
|
||||||
" AND projects.PrjCod=prj_usr.PrjCod"
|
" AND projects.PrjCod=prj_usr.PrjCod"
|
||||||
" AND prj_usr.UsrCod=%ld"
|
" AND prj_usr.UsrCod=%ld"
|
||||||
" GROUP BY projects.PrjCod" // To not repeat projects (DISTINCT can not be used)
|
" GROUP BY projects.PrjCod" // To not repeat projects (DISTINCT can not be used)
|
||||||
" ORDER BY %s",
|
" ORDER BY %s",
|
||||||
Gbl.Hierarchy.Crs.CrsCod,
|
Gbl.Hierarchy.Crs.CrsCod,
|
||||||
|
@ -2945,12 +2946,13 @@ static void Prj_GetListProjects (struct Prj_Projects *Projects)
|
||||||
case Prj_ORDER_DEPARTMENT:
|
case Prj_ORDER_DEPARTMENT:
|
||||||
NumRows = DB_QuerySELECT (&mysql_res,"can not get projects",
|
NumRows = DB_QuerySELECT (&mysql_res,"can not get projects",
|
||||||
"SELECT projects.PrjCod"
|
"SELECT projects.PrjCod"
|
||||||
" FROM prj_usr,projects LEFT JOIN departments"
|
" FROM prj_usr,"
|
||||||
" ON projects.DptCod=departments.DptCod"
|
"projects LEFT JOIN dpt_departments"
|
||||||
|
" ON projects.DptCod=dpt_departments.DptCod"
|
||||||
" WHERE projects.CrsCod=%ld"
|
" WHERE projects.CrsCod=%ld"
|
||||||
"%s%s%s"
|
"%s%s%s"
|
||||||
" AND projects.PrjCod=prj_usr.PrjCod"
|
" AND projects.PrjCod=prj_usr.PrjCod"
|
||||||
" AND prj_usr.UsrCod=%ld"
|
" AND prj_usr.UsrCod=%ld"
|
||||||
" GROUP BY projects.PrjCod" // To not repeat projects (DISTINCT can not be used)
|
" GROUP BY projects.PrjCod" // To not repeat projects (DISTINCT can not be used)
|
||||||
" ORDER BY %s",
|
" ORDER BY %s",
|
||||||
Gbl.Hierarchy.Crs.CrsCod,
|
Gbl.Hierarchy.Crs.CrsCod,
|
||||||
|
@ -2996,12 +2998,13 @@ static void Prj_GetListProjects (struct Prj_Projects *Projects)
|
||||||
case Prj_ORDER_DEPARTMENT:
|
case Prj_ORDER_DEPARTMENT:
|
||||||
NumRows = DB_QuerySELECT (&mysql_res,"can not get projects",
|
NumRows = DB_QuerySELECT (&mysql_res,"can not get projects",
|
||||||
"SELECT projects.PrjCod"
|
"SELECT projects.PrjCod"
|
||||||
" FROM prj_usr,projects LEFT JOIN departments"
|
" FROM prj_usr,"
|
||||||
" ON projects.DptCod=departments.DptCod"
|
"projects LEFT JOIN dpt_departments"
|
||||||
|
" ON projects.DptCod=dpt_departments.DptCod"
|
||||||
" WHERE projects.CrsCod=%ld"
|
" WHERE projects.CrsCod=%ld"
|
||||||
"%s%s%s"
|
"%s%s%s"
|
||||||
" AND projects.PrjCod=prj_usr.PrjCod"
|
" AND projects.PrjCod=prj_usr.PrjCod"
|
||||||
" AND prj_usr.UsrCod IN (%s)"
|
" AND prj_usr.UsrCod IN (%s)"
|
||||||
" GROUP BY projects.PrjCod" // To not repeat projects (DISTINCT can not be used)
|
" GROUP BY projects.PrjCod" // To not repeat projects (DISTINCT can not be used)
|
||||||
" ORDER BY %s",
|
" ORDER BY %s",
|
||||||
Gbl.Hierarchy.Crs.CrsCod,
|
Gbl.Hierarchy.Crs.CrsCod,
|
||||||
|
@ -3029,7 +3032,7 @@ static void Prj_GetListProjects (struct Prj_Projects *Projects)
|
||||||
case Prj_ORDER_TITLE:
|
case Prj_ORDER_TITLE:
|
||||||
NumRows = DB_QuerySELECT (&mysql_res,"can not get projects",
|
NumRows = DB_QuerySELECT (&mysql_res,"can not get projects",
|
||||||
"SELECT projects.PrjCod"
|
"SELECT projects.PrjCod"
|
||||||
" FROM projects"
|
" FROM projects"
|
||||||
" WHERE projects.CrsCod=%ld"
|
" WHERE projects.CrsCod=%ld"
|
||||||
"%s%s%s"
|
"%s%s%s"
|
||||||
" ORDER BY %s",
|
" ORDER BY %s",
|
||||||
|
@ -3040,8 +3043,8 @@ static void Prj_GetListProjects (struct Prj_Projects *Projects)
|
||||||
case Prj_ORDER_DEPARTMENT:
|
case Prj_ORDER_DEPARTMENT:
|
||||||
NumRows = DB_QuerySELECT (&mysql_res,"can not get projects",
|
NumRows = DB_QuerySELECT (&mysql_res,"can not get projects",
|
||||||
"SELECT projects.PrjCod"
|
"SELECT projects.PrjCod"
|
||||||
" FROM projects LEFT JOIN departments"
|
" FROM projects LEFT JOIN dpt_departments"
|
||||||
" ON projects.DptCod=departments.DptCod"
|
" ON projects.DptCod=dpt_departments.DptCod"
|
||||||
" WHERE projects.CrsCod=%ld"
|
" WHERE projects.CrsCod=%ld"
|
||||||
"%s%s%s"
|
"%s%s%s"
|
||||||
" ORDER BY %s",
|
" ORDER BY %s",
|
||||||
|
|
Loading…
Reference in New Issue
Block a user