]> git.llucax.com Git - z.facultad/75.06/emufs.git/blobdiff - emufs_gui/facturas.c
* BUGFIX : en idx_borrar se estaba abriendo el archivo como "a+" en lugar
[z.facultad/75.06/emufs.git] / emufs_gui / facturas.c
index 6a56a926e3094488029a2fc0f566396dc050f657..68ffe06cbc78af0a0d08910edb1b83369aeb1e8d 100644 (file)
@@ -8,7 +8,7 @@ static int al_azar(int min, int max);
 static void *procesar_guardar_factura(t_Factura *f, t_LstFacturas *lst, int *size);
 
 /* es por cada mes a generar */
 static void *procesar_guardar_factura(t_Factura *f, t_LstFacturas *lst, int *size);
 
 /* es por cada mes a generar */
-#define CANT_FACTURAS 500
+#define CANT_FACTURAS 1500
 
 t_LstFacturas *fact_cargar(const char *filename)
 {
 
 t_LstFacturas *fact_cargar(const char *filename)
 {
@@ -20,14 +20,14 @@ t_LstFacturas *fact_cargar(const char *filename)
 
        lst_facturas = (t_LstFacturas *)malloc(sizeof(t_LstFacturas));
 
 
        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));
+       if (filename != NULL) {
+               lst_facturas->fp = emufs_crear("facturas", T3, sizeof(t_Factura)*20, sizeof(t_Factura));
                /* Genero las facturas en forma automática */
                /* Genero las facturas de fecha Abril 2004 */
                srand(time(NULL));
                numero = 0;
                cant = 0;
                /* 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++) {
+               for(i=0; i<CANT_FACTURAS; i++) {
                        /* Entre 10 y 15 ITEMS! */
                        fact.numero = numero;
                        sprintf(fact.emision, "200404%02d", al_azar(1, 30));
                        /* Entre 10 y 15 ITEMS! */
                        fact.numero = numero;
                        sprintf(fact.emision, "200404%02d", al_azar(1, 30));
@@ -55,6 +55,20 @@ t_LstFacturas *fact_cargar(const char *filename)
        return lst_facturas;
 }
 
        return lst_facturas;
 }
 
+int fact_liberar(t_LstFacturas *l)
+{
+       if (l == NULL) l = lst_facturas;
+       if (l == NULL) return 1;
+
+       ver_archivo_FS(l->fp);
+       emufs_destruir(l->fp);
+/*     free(l->array); */
+       free(l);
+
+       lst_facturas = NULL;
+       return 0;
+}
+
 int al_azar(int min, int max)
 {
        return (min + rand()%(max-min));
 int al_azar(int min, int max)
 {
        return (min + rand()%(max-min));