- k = emufs_indice_generar_clave_desde_valor(lst_articulos->fp->indices, (char *)&(articulo->numero));
- PERR("Borrando ARTICULO")
- lst_articulos->fp->borrar_registro(lst_articulos->fp, k, dummy);
- PERR("LISTO BORRADO");
+
+ /* Antes de borrar veo si existe alguna factura que contenga este articulo */
+ if (fact_hay_con_item(articulo->numero) == 0) {
+ k = emufs_indice_generar_clave_desde_valor(lst_articulos->fp->indices, (char *)&(articulo->numero));
+ PERR("Borrando ARTICULO")
+ lst_articulos->fp->borrar_registro(lst_articulos->fp, k, dummy);
+ PERR("LISTO BORRADO");
+ } else {
+ wattron(win, COLOR_PAIR(COLOR_YELLOW));
+ mvwaddstr(win, 6, 4, "No se pudo eliminar Articulo porque hay una factura que lo referencia.");
+ wattroff(win, COLOR_PAIR(COLOR_YELLOW));
+ wrefresh(win);
+ getch();
+ }