]> git.llucax.com Git - z.facultad/75.06/emufs.git/blob - emufs_gui/facturas.h
1afce4188c20ae908420396dad574431a57f3b3f
[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         EMUFS_BLOCK_ID reg_nota;
30         char emision[9];
31         char vencimiento[9];
32         char estado[3];
33         char fp[3];
34         char ctacte[6];
35         char cheque[19];
36         char *nota;
37         t_Item *items;
38 } t_Factura;
39
40 typedef struct _reg_factura_ {
41         EMUFS_REG_ID num_reg; /* numero de registro en el archivo */
42         EMUFS_REG_ID texto_reg; /* numero de registro donde se encuentra el texto */
43         unsigned int numero; /* codigo de factura */
44         struct _reg_factura_ *sig, *ant;
45 } t_Reg_Factura;
46
47 typedef struct _lista_facturas_ {
48         t_Reg_Factura *primero;
49         EMUFS *fp; /* Filepointer al archivo donde estan los datos */
50         EMUFS *fp_texto; /* Filepointer al archivo donde estan los textos */
51 } t_LstFacturas;
52         
53 t_LstFacturas *fact_cargar(const char *filename, int tipo, int tam_bloque);
54 int fact_liberar(t_LstFacturas *l);
55
56 void fact_agregar(char *s);
57 void fact_modificar(char *s);
58 void fact_eliminar(char *s);
59
60 t_LstFacturas *fact_get_lst();
61
62 #endif
63