X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/e0b2f02fb7880eb26e4fc28e85253dc56b6c6aab..ee8568afe20289bebd04904350c3f2563fc90e4a:/emufs_gui/articulos.c diff --git a/emufs_gui/articulos.c b/emufs_gui/articulos.c index 6e6f950..f6f4fed 100644 --- a/emufs_gui/articulos.c +++ b/emufs_gui/articulos.c @@ -63,7 +63,7 @@ t_LstArticulos *art_cargar(const char *filename) if (node->type == XML_ELEMENT_NODE) { if (strcmp(node->name, "ARTICULO") == 0) { t_Articulo art; - art.numero = 1; atoi(xmlGetProp(node, "NroArtículo")); + art.numero = atoi(xmlGetProp(node, "NroArtículo")); strncpy(art.desc, xmlGetProp(node, "Descripción"), 50); strncpy(art.presentacion, xmlGetProp(node, "Presentación"), 30); strncpy(art.existencia, xmlGetProp(node, "Existencia"), 8); @@ -74,11 +74,11 @@ t_LstArticulos *art_cargar(const char *filename) /* Ya leido el articulo ahora paso a guardarlo en el archivo y agregarlo a la lista */ tmp->array[cant].num_reg = tmp->fp->grabar_registro(tmp->fp, &art, sizeof(t_Articulo)); tmp->array[cant].numero = art.numero; - printf("tmp->arra[%d].numero = 1\n", cant); ++cant; } } } + tmp->cant = cant; printf("%d\n", cant); xmlFreeDoc(document); xmlCleanupParser(); @@ -201,6 +201,7 @@ void art_agregar(char *s) { WINDOW *win; t_Form *form; + t_Articulo art; win = newwin(8, 68, 13, 1); box(win, 0, 0); @@ -215,8 +216,19 @@ void art_agregar(char *s) form_agregar_widget(form, INPUT, "Stock Mínimo", 8, ""); form_ejecutar(form, 1,1); - /* TODO : Agregar el nuevo elemento */ + art.numero = atoi(form_obtener_valor_char(form, "Numero de Artículo")); + strcpy(art.desc, form_obtener_valor_char(form, "Descripción")); + strcpy(art.presentacion, form_obtener_valor_char(form, "Presentación")); + strcpy(art.existencia, form_obtener_valor_char(form, "Stock Actual")); + /*strncpy(tmp->array[cant].ubicacion, xmlGetProp(node, "Ubicacion"), 30);*/ + strcpy(art.pvu, form_obtener_valor_char(form, "PVU")); + strcpy(art.emin, form_obtener_valor_char(form, "Stock Mínimo")); + /* Ya leido el articulo ahora paso a guardarlo en el archivo y agregarlo a la lista */ + lst_articulos->array[lst_articulos->cant].num_reg = lst_articulos->fp->grabar_registro(lst_articulos->fp, &art, sizeof(t_Articulo)); + lst_articulos->array[lst_articulos->cant].numero = art.numero; + lst_articulos->cant++; + form_destruir(form); werase(win);