]> git.llucax.com Git - z.facultad/75.06/emufs.git/blob - emufs_gui/facturas.h
Soporte para bloques mas chicos que el registro.
[z.facultad/75.06/emufs.git] / emufs_gui / facturas.h
1
2 #ifndef _FACTURAS_H_
3 #define _FACTURAS_H_
4
5 #include "emufs.h"
6 #include "form.h"
7 #include <string.h>
8 #include <stdlib.h>
9 #include <time.h>
10 #include <string.h>
11 #include <curses.h>
12 #include <libxml/tree.h>
13 #include <libxml/parser.h>
14
15 typedef struct _t_item_ {
16         int numero;
17         char cv[9];
18         char pvu[9];
19 } t_Item;
20
21 typedef struct _facturas_ {
22         /* Dejo los campos numericos al principio para mayor facilidad
23          * de parseo.
24          */
25         int numero;
26         float procdoi;
27         int numero_remito;
28         int cant_items;
29         char emision[9];
30         char vencimiento[9];
31         char estado[3];
32         char fp[3];
33         char ctacte[6];
34         char cheque[19];
35         char *nota;
36         t_Item *items;
37 } t_Factura;
38
39 typedef struct _reg_factura_ {
40         EMUFS_REG_ID num_reg; /* numero de registro en el archivo */
41         EMUFS_REG_ID texto_reg; /* numero de registro donde se encuentra el texto */
42         unsigned int numero; /* codigo de factura */
43         struct _reg_factura_ *sig, *ant;
44 } t_Reg_Factura;
45
46 typedef struct _lista_facturas_ {
47         t_Reg_Factura *primero;
48         EMUFS *fp; /* Filepointer al archivo donde estan los datos */
49         EMUFS *fp_texto; /* Filepointer al archivo donde estan los textos */
50 } t_LstFacturas;
51         
52 t_LstFacturas *fact_cargar(const char *filename, int tipo, int tam_bloque);
53 int fact_liberar(t_LstFacturas *l);
54
55 void fact_agregar(char *s);
56 void fact_modificar(char *s);
57 void fact_eliminar(char *s);
58
59 t_LstFacturas *fact_get_lst();
60
61 #endif
62