/* leo los datos y los guardo en el archivo*/
cant = 0;
/* FIXME : por ahora hago que entren 2 bloques y me sobre algo de espacio*/
- tmp->fp = emufs_crear("articulos", T2, sizeof(t_Articulo)*2, sizeof(t_Articulo));
+ tmp->fp = emufs_crear("articulos", T3, sizeof(t_Articulo)*2, sizeof(t_Articulo));
for (node=inicio ; node ; node = node->next) {
if (node->type == XML_ELEMENT_NODE) {
if (strcmp(node->name, "ARTICULO") == 0) {
if (save != NULL) {
tmp->array[cant].num_reg = tmp->fp->grabar_registro(tmp->fp, save, size, &error);
tmp->array[cant].numero = art.numero;
- printf("Grabe un registro\n");
++cant;
free(save);
}
}
}
tmp->cant = cant;
- printf("Libero XML\n");
xmlFreeDoc(document);
xmlCleanupParser();
- printf("ME VOY!!\n");
} else {
tmp->fp = emufs_abrir("articulos");
/* TODO Cargar registros desde el archivo */
/* FIXME : NO ME GUSTA :-/ */
t_Articulo *art;
void *tmp;
- int i,size;
+ int i,error;
+ EMUFS_REG_SIZE size;
int n = atoi(numero);
if (lst == NULL) lst = lst_articulos;
if (n == lst->array[i].numero) {
art = (t_Articulo *)malloc(sizeof(t_Articulo));
/* Ya se cual tengo que retornar. Ahora veo si lo cargo desde el archivo */
- tmp = lst->fp->leer_registro(lst->fp, lst->array[i].num_reg, &size);
+ tmp = lst->fp->leer_registro(lst->fp, lst->array[i].num_reg, &size, &error);
if (procesar_leer_articulo(art, tmp, size, lst_articulos) != 1) {
free(art);
t_LstFacturas *fact_cargar(const char *filename)
{
- int i, numero, size, error;
+ int i, numero, size, error, cant;
char *estados[6] = {"PN", "CD", "CM", "CF", "PM", "NC"};
char *fps[6] = {"CO", "CR", "CH"};
void *save;
t_Factura fact;
+ lst_facturas = (t_LstFacturas *)malloc(sizeof(t_LstFacturas));
+
if (filename == NULL) {
+ lst_facturas->fp = emufs_crear("facturas", T3, sizeof(t_Factura)*2, sizeof(t_Factura));
/* Genero las facturas en forma automática */
/* Genero las facturas de fecha Abril 2004 */
srand(time(NULL));
numero = 0;
+ cant = 0;
for(i=0; i<CANT_FACTURAS*0.1; i++) {
/* Entre 10 y 15 ITEMS! */
fact.numero = numero;
/* Guardo */
save = procesar_guardar_factura(&fact, lst_facturas, &size);
if (save != NULL) {
- lst_facturas->fp->grabar_registro(lst_facturas->fp, save, size, &error);
+ lst_facturas->array[cant].numero = numero;
+ lst_facturas->array[cant].num_reg = lst_facturas->fp->grabar_registro(lst_facturas->fp, save, size, &error);
}
}
+ lst_facturas->cant = cant;
} else {
/* Cargo un archivo existente */
}