#737 Comando crear imagen de la consola: actualiza en la base de datos las propiedades de la particion: imagen, revisión y fecha de despliegue.

git-svn-id: https://opengnsys.es/svn/branches/version1.1@5024 a21b9725-9963-47de-94b9-378ad31fedc9
master
Irina Gomez 2016-09-30 07:47:16 +00:00
parent b5022791ab
commit faee12ece6
1 changed files with 35 additions and 6 deletions

View File

@ -2023,7 +2023,7 @@ BOOLEAN actualizaCreacionImagen(Database db, Table tbl, char* idi, char* dsk,
char* par, char* cpt, char* ipr, char *ido) {
char msglog[LONSTD], sqlstr[LONSQL];
char modulo[] = "actualizaCreacionImagen()";
int idr,ifs;
int idr,ifs,rev;
/* Toma identificador del repositorio correspondiente al ordenador modelo */
snprintf(sqlstr, LONSQL,
@ -2064,11 +2064,11 @@ BOOLEAN actualizaCreacionImagen(Database db, Table tbl, char* idi, char* dsk,
/* Actualizar los datos de la imagen */
snprintf(sqlstr, LONSQL,
"UPDATE imagenes"
" SET idordenador=%s, numdisk=%s, numpar=%s, codpar=%s,"
" idperfilsoft=%d, idrepositorio=%d,"
" fechacreacion=NOW(), revision=revision+1"
" WHERE idimagen=%s", ido, dsk, par, cpt, ifs, idr, idi);
"UPDATE imagenes"
" SET idordenador=%s, numdisk=%s, numpar=%s, codpar=%s,"
" idperfilsoft=%d, idrepositorio=%d,"
" fechacreacion=NOW(), revision=revision+1"
" WHERE idimagen=%s", ido, dsk, par, cpt, ifs, idr, idi);
if (!db.Execute(sqlstr, tbl)) { // Error al recuperar los datos
errorLog(modulo, 21, FALSE);
@ -2076,6 +2076,35 @@ BOOLEAN actualizaCreacionImagen(Database db, Table tbl, char* idi, char* dsk,
errorInfo(modulo, msglog);
return (FALSE);
}
/* Toma revisión de la imagen */
snprintf(sqlstr, LONSQL,
"SELECT revision"
" FROM imagenes"
" WHERE idimagen=%s", idi);
if (!db.Execute(sqlstr, tbl)) { // Error al leer
errorLog(modulo, 21, FALSE);
db.GetErrorErrStr(msglog);
errorInfo(modulo, msglog);
return (FALSE);
}
if (!tbl.Get("revision", rev)) { // Toma dato
tbl.GetErrorErrStr(msglog); // Error al acceder al registro
errorInfo(modulo, msglog);
return (FALSE);
}
/* Actualizar los datos en el cliente */
snprintf(sqlstr, LONSQL,
"UPDATE ordenadores_particiones"
" SET idimagen=%s, revision=%d, fechadespliegue=NOW()"
" WHERE idordenador=%s AND numdisk=%s AND numpar=%s",
idi, rev, ido, dsk, par);
if (!db.Execute(sqlstr, tbl)) { // Error al recuperar los datos
errorLog(modulo, 21, FALSE);
db.GetErrorErrStr(msglog);
errorInfo(modulo, msglog);
return (FALSE);
}
return (TRUE);
}
// ________________________________________________________________________________________________________