int emufs_tipo2_inicializar(EMUFS* efs)
{
efs->grabar_registro = emufs_tipo2_grabar_registro;
- efs->borrar_registro = emufs_tipo2_borrar_registro;
+ efs->borrar_registro = emufs_tipo2_borrar_registro;
efs->leer_registro = emufs_tipo2_leer_registro;
+ efs->leer_registro_raw = emufs_tipo2_leer_registro_raw;
efs->modificar_registro = emufs_tipo2_modificar_registro;
efs->leer_estadisticas = emufs_tipo2_leer_estadisticas;
efs->compactar = emufs_tipo2_compactar;
return 0;
}
+
+void* emufs_tipo2_leer_registro_raw(EMUFS *emu, EMUFS_REG_ID id, EMUFS_REG_SIZE *size, int *pos)
+{
+ (*size) = 0;
+ (*pos) = 0;
+ PERR("IMPLEMENTAME CABRON");
+ return NULL;
+}
+
*/
int emufs_tipo2_updateidx(EMUFS *efs);
+/** Método para leer un registro con todo su bloque asociado. */
+void* emufs_tipo2_leer_registro_raw(EMUFS *emu, EMUFS_REG_ID id, EMUFS_REG_SIZE *size, int *pos);
+
#endif /* _EMUFS_TIPO2_H_ */
wattroff(padre, COLOR_PAIR(COLOR_BLUE));
switch (fp->tipo) {
case T1:
+ case T2:
waddstr(padre, "Registro variable con bloque parametrizado.");
if (cual == 0)
procesar = procesar_registro_articulo_tipo1;
else
procesar = procesar_registro_factura_tipo1;
break;
- case T2:
- waddstr(padre, "Registro variable sin bloques.");
- break;
case T3:
if (cual == 0)
procesar = procesar_registro_articulo_tipo3;
curs_set(0);
mostrar_info(padre, h, offset_alto, 1);
-
- mvwaddnstr(actual[1], 0, 0, data, pos_actual);
- wattron(actual[1], A_BOLD);
- waddnstr(actual[1], data+pos_actual, ancho_registro);
- wattroff(actual[1], A_BOLD);
- waddnstr(actual[1], data+pos_actual+ancho_registro, size-(pos_actual+ancho_registro));
+
+ if (data) {
+ mvwaddnstr(actual[1], 0, 0, data, pos_actual);
+ wattron(actual[1], A_BOLD);
+ waddnstr(actual[1], data+pos_actual, ancho_registro);
+ wattroff(actual[1], A_BOLD);
+ waddnstr(actual[1], data+pos_actual+ancho_registro, size-(pos_actual+ancho_registro));
+ }
wrefresh(actual[1]);
wrefresh(actual[0]);