Fecha actual Vie Nov 22, 2024 12:28 am

Todos los horarios son UTC - 3 horas




Nuevo tema Responder al tema  [ 5 mensajes ] 
Autor Mensaje
NotaPublicado: Jue Sep 23, 2010 4:25 pm 

Registrado: Vie Ago 06, 2010 5:59 pm
Mensajes: 74
Hola amigos! :D

Un amigo me pidió que le hiciera un programa que maneje una base de datos para sus pacientes, y mi problema es el siguiente:
Resulta que mi amigo tiene un archivo WORD para cada uno de sus mil y pico pacientes, y lo que a él le gustaría tener es una base de datos con los datos de todos sus pacientes (para eso me llamó a mi). Para él lo ideal sería que el programa pasara AUTOMATICAMENTE los datos de cada archivo WORD a la base de datos, para no tener que agregar a sus pacientes uno por uno de nuevo.

Lo que a mi se me ocurrió para poder pasar de archivo plano a base de datos, es escribir un código en mi programa que siempre que vea ciertas palabras claves (como "nombre" (o "NOMBRE", o "Nombre", o "nombre:", o otra variante de mayúsculas y minúsculas y algún signo de puntuación (ocupando operaciones lógicas OR y AND)), "apellido", "fecha", etc), que copie lo que viene después del espacio en blanco al campo de la base de datos que corresponde.

[B]El gran problema que tengo[b] es que, por lo que tengo entendido, el formato que usa word es MUY DIFERENTE al que usa un archivo plano de texto (.txt), ya que en el archivo word aparte del contenido "escrito", hay muchos más datos metidos, como el tamaño de la letra, el tipo de letra, el alineamiento, el formato, etc, etc, etc, etc, etc... así que no es cuestión de solo cambiar la extensión del archivo. :P

Entonces mi pregunta apunta a lo siguiente: ¿Existe algún programa para cambiar de [b]forma masiva[b] archivos word a archivos planos de texto?
Si alguien tiene otra idea acerca de como pasar los mil y tantos archivos word con los datos de los pacientes a una base de datos, sientase libre de postearla acá :thumbup:

Gracias de antemano.

PS: Los archivos word están bastante ordenados:
Nombre
Apellido
Fecha inicio
etc
..
..
..


Arriba
 Perfil  
 
NotaPublicado: Jue Sep 23, 2010 6:22 pm 
Avatar de Usuario

Registrado: Vie Ago 06, 2010 1:22 pm
Mensajes: 1507
Ubicación: República Argentina
Lo que se me ocurre en el momento es unir todos los archivos de Word en uno solo y luego copiar el texto a un archivo txt.

Para unir los archivos Word tenés acá una explicación
Código:
http://es.answers.yahoo.com/question/index?qid=20100822065609AAZQW1b

Espero que te sirva.

_________________
Imagen


Arriba
 Perfil  
 
NotaPublicado: Jue Sep 23, 2010 7:36 pm 
Uploader

Registrado: Mié Ago 04, 2010 8:52 pm
Mensajes: 1728
Ubicación: Azul
No tengo idea de como hacer eso, pero si te tomas el trabajo de pasar esos datos a access luego te queda como vos queres, que al poner un apellido aparezcan los demas datos,más todas las opciones de consulta que podes hacer en access. Suerte :salud:

_________________
Imagen


Arriba
 Perfil  
 
NotaPublicado: Jue Sep 23, 2010 8:40 pm 
Sysadmin
Avatar de Usuario

Registrado: Jue Jul 29, 2010 6:55 pm
Mensajes: 3166
Tenes 2 posibles soluciones..
1 - Por un tiempo seguir usando los 2 sistemas (los archivos de word y el programa).. Y que vaya pasando los datos de los pacientes a medida que vallan yendo al consultorio.
2 - Contratar a alguien que te haga el data entry de todos los registros (o hacerlo vos :P )

Si queres hacer que el programa te pase los .doc a la DB, vas a necesitar que todos los archivos tengan el mismo formato.. Además, tenes que saber bastante de expresiones regulares.

_________________
Imagen


Imagen
Imagen
Imagen

Imagen
Imagen
"Pedes in terra ad sidera visus"
Imagen
Imagen
Imagen


Arriba
 Perfil  
 
NotaPublicado: Vie Sep 24, 2010 12:26 am 

Registrado: Vie Ago 06, 2010 5:59 pm
Mensajes: 74
Gracias por las sugerencias, muchachos!

@ Lian
La solución que me planteas tú me parece muy buena :thumbup: Me podría ayudar a solucionar el problema.
El problema es que después de hacer lo que tú propones, yo tendría que pasar ese archivo enooooooooooooooorme a la base de datos, y mepa que va a ser bastante complicado, ya que van a estar mezclados todos los pacientes en un solo archivo, y si a la secretaria se le había olvidado poner un solo campo a un paciente, lo más probable es que se corran los datos al pasarlos a la base de datos.
Con un archivo por persona me aseguro que, aunque a la secretaria se le haya olvidado completar UN campo del paciente, TODOS los otros datos van a corresponder a ese paciente.
Igual me parece buena idea, pero antes voy de implementarla voy a ver si hay otra solución.

@ Alfredo85
Es cierto, me han dicho que Access es una herramienta muy buena y fácil de aprender para manejar bases de datos, PERO tengo dos problemas con eso:
1.) No me quiero dar el trabajo de pasar los datos uno por uno, es por eso que estoy buscando un algoritmo o programa que lo haga por mi
2.) Quiero usar al mínimo los programas de Microsoft (y software privativo :tongue: ), así que si bien Access es fácil de aprender, si voy a aprender a manejar bases de datos, prefiero aprender otros lenguajes.
Gracias igual por la sugerencia

@ Neiker
Precisamente, para las dos soluciones que me planteaste, mi amigo me dijo dos cosas parecidas:
1.) Si no existe forma de pasar los archivos word a la base de datos, la base de datos parte desde que haya terminado el programa (es decir, a medida que pasen los pacientes a la consulta él los va ingresando)
2.) Él le puede pagar (bien barato) a sus hijos para que le pasen los datos :lol: (hay que aprovechar la mano de obra de la casa :D )
Igual.... para mi el desafío está en encontrar una forma de automatizar el proceso.
Acerca de lo que me dices que para pasar los .doc a la DB necesito que todos los archivos tengan el mismo formato...... ¿Con eso te refieres a que todos los archivos deben tener la misma estructura? Por ejemplo:
Citar:
Nombre: nombre_paciente


Apellido: apellido_paciente

DNI: DNI_paciente
Fecha Nacimiento: fecha_nacimiento_paciente
Diagnóstico: diagnostico_paciente

TODOS los archivos tienen que tener las mismas letras en negrita, los párrafos centrados al mismo lugar, los mismos retornos de carro y las mismas palabras subrayadas, cierto? (entre muchos más detalles de ese estilo) y si un archivo tiene un campo más o un campo menos no lo voy a poder pasar, verdad? Debido a que word pone un montón de "expresiones regulares" cuando uno escribe escribe los datos.
Es por eso que no quiero pasar los archivos directamente de .doc a la DB, sino que quiero hacer lo siguiente:
.doc -> .txt -> DB

Pasar de .doc -> .txt no creo que deba ser muy difícil: pasar los caracteres uno por uno y omitir todas las expresiones regulares de word. Y para pasar de .txt -> DB voy a usar el algoritmo que puse en mi primer post.... pero para pasar de .doc -> .txt es donde tengo problemas (para pasar un solo archivo no hay problema: usar la opción "guarda como .txt" de word, pero para pasar mil y tantos archivos es donde está el problema).

Gracias por la atención :salud:


Arriba
 Perfil  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 5 mensajes ] 

Todos los horarios son UTC - 3 horas


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 45 invitados


No podes abrir nuevos temas en este Foro
No podes responder a temas en este Foro
No podes editar tus mensajes en este Foro
No podes borrar tus mensajes en este Foro

Buscar:
Powered by phpBB® Forum Software © phpBB Group
Traducción al Español Argentino por nextgen
en colaboración con phpBB España
[ Time : 0.072s | 14 Queries | GZIP : On | Load : 0.49 ]