Favor Ayuda Urgente Actualiza Registros DBF Con Word

Favor Ayuda Urgente Actualiza Registros DBF Con Word

Postby remtec » Thu Dec 27, 2018 1:46 pm

Amigos

Tengo una Urgencia con prioridad 1, he tratado de solucionar mi problema pero no he podido y me veo obligado a recurrir a uds, por que se que aqui estan los maestros.

Disculpen mi patudes, pero necesito pedir el favor si alguien me puede facilitar un ejemplo funcional, para poder Actualizar el Cotenido de una DBF con Word y luego volver a grabar en la DBF, no se me ocurre otra solucion.

Como referencia, hoy Actualizo los informes de Examene Medicos en una DBF, con un Nro de Ingreso, usando una Xbrowse, pero con el pasar del tiempo, ya no es tan funcional, pues nos remiten los Informes en Formato Word y lo que pretendo, es que la digitadora copie ese contenido de Word a Dbf y luego grabe en la DBF y asi mantener almaceda el respaldo de los informes, para cumplir con exigencia legales. No puedo dejar de usar las DBF, al menos por el momento.

Ademas, cuando se requiera modificar esa contenido de la DBF, se lleve a Word y luego se guerde en la DBF.

Agradeciendo su ayuda, les saluda muy atte.

Antonio
Last edited by remtec on Sat Dec 29, 2018 5:06 pm, edited 1 time in total.
FWH 22.10 - HARBOUR - PELLES C
remtec
 
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Favor Ayuda Urgente con WORD a DBF

Postby remtec » Fri Dec 28, 2018 3:23 am

Amigos

Nadie tiene alguna sugerencia, estoy contra el tiempo, no quiero pensar que en Fivewin y Harbour, esto no se puede realizar.

Saludos.

Antonio.
FWH 22.10 - HARBOUR - PELLES C
remtec
 
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Favor Ayuda Urgente con WORD a DBF

Postby remtec » Fri Dec 28, 2018 7:13 pm

Amigos

Se fueron todos de fiesta??

Alguna idea, antes de tirar la esponja.

Saludos
Antonio
FWH 22.10 - HARBOUR - PELLES C
remtec
 
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Favor Ayuda Urgente con WORD a DBF

Postby cmsoft » Fri Dec 28, 2018 8:52 pm

Hola Antonio.
No entiendo bien cual es la idea. Si guardar un documento Word en una dbf (en un campo memo supongo) y despues poder mostrarlo?
U obtener datos que estan escritos en el documento Word para pasarlos a diferentes campos de tu dbf?
Me gustaria ayudarte pero no comprendo muy bien que es lo que necesitas.
Si es lo primero podrias hacerlo mediante memoread y luego guardarlo en el campo memo de la dbf, y la inversa con memowrit.
Para el otro caso ya lo veo mucho mas complicado, puesto que cuando lo levantes a una variable con MemoRead va a tener todos los caracteres de control de Word.
User avatar
cmsoft
 
Posts: 1293
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Re: Favor Ayuda Urgente con WORD a DBF

Postby remtec » Fri Dec 28, 2018 10:33 pm

Hola Cesar

Te agradezco de corazon tu intencion de ayudarme.

Mira lo que sucede que tengo una DBF, con 2 campos:
1. Folio N 10.
2. Detalle_Inf Cha 60
En esta dbf guardo los informes actualizados con un XBROWSE, cada informe medico puede tener 100 Registros, cada folio.

Hasta ahora asi funciona asi, lo que pensaba que podia modernizar este forma de digitar los informes, usando por Ejemplo Tword o llamar a Word de Office, para los cual tendria que leer cada informe que se desea modificar y pasarlo a formato Word, para luego guardar su datos actualizado.
Lo otro es al ingresar un nuevo informe, esta permita digitar todo el informe o copiarlo desde alguna plantilla, actualizar y guardarlo en la DBF.

Si no logro realizar este proceso, tendria que obligatoriamente cambiar esta aplicacion a otro lenguaje, ya que es el requerimiento del cliente y para este caso, como sucede en el area de informes de examenes, se debe competir con otros lenguajes, que si le facilitan y aceleran el trabajo de las digitadoras, las tecnologias avanzan y no lo podemos quedar atras.

Me pregunto, si sere el unico en este foro, que esta lidiando con este tipo de requerimiento, o no se como lo realizaran otros programadores.

De verdad Cesar, te agradezco de corazon tu ayuda, estoy muy complicado.

Muchos Saludos

Un Feliz Año Nuevo, que este año que se aproxima, sea de muchas bendiciones y exitos, para ti y tu familia.

Antonio.
FWH 22.10 - HARBOUR - PELLES C
remtec
 
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Favor Ayuda Urgente Actualiza Registros DBF Con Word

Postby Antonio Linares » Sat Dec 29, 2018 9:55 pm

Te están proporcionando texto ó un fichero de imagen (JPG, PNG, etc) ?

No queda claro lo que necesitas. Por favor, intenta explicarlo nuevamente :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42203
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Favor Ayuda Urgente Actualiza Registros DBF Con Word

Postby remtec » Sat Dec 29, 2018 10:24 pm

Maestro Antonio

Muy agradecido por responder.

Son solo lineas de texto lo que debe digitar la digitadora, es el informe escrito del resultado de un examen.
Hoy tengo un DBF donde guardo esta informacion en un campo Character de 60, lo actualizo con Xbrowse.

Hoy debo responder a los requerimientos del cliente para interactuar con un editor de texto, es por esto que pense en Word, algo que permita lo que arriba explico, hoy estoy condicionado a esta necedidad.

Muchos Saludos

Antonio
FWH 22.10 - HARBOUR - PELLES C
remtec
 
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Favor Ayuda Urgente Actualiza Registros DBF Con Word

Postby Antonio Linares » Sat Dec 29, 2018 10:26 pm

Quieren usar Word ?

Quieren distintos tipos de letras (fonts), negrita, colores, etc ?

Que necesitan en concreto de Word ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42203
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Favor Ayuda Urgente Actualiza Registros DBF Con Word

Postby Antonio Linares » Sat Dec 29, 2018 10:31 pm

Revisa el ejemplo FWH\samples\testrtf.prg por si esto fuese suficiente para tu cliente:

Image
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42203
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Favor Ayuda Urgente Actualiza Registros DBF Con Word

Postby remtec » Sun Dec 30, 2018 1:32 am

Antonio

Muchas gracias por tu atencion.

El Cliente, recibe los Informes de Examenes escritos en formato Word, para ser transcritos al sistema, como registro legal de cada informe, lo que el Cliente pretende al igual que en otros sistemas, es actualizar datos de pacientes y luego Copiar el contenido de este archivo y almacenarlo automaticamente en el sistema de Fivewin en la DBF que esta para este efecto, teniendo asi un registro historico que se requiere legalmente, ademas luego permitir contabilizar los informes por periodo, para cancelacion del servicio que ha realizado los Dr. Radiologos.

El Proceso es el siguiente:
1. Ingreso de los pacientes al sistema registrando el examen que se realiza.
2. Toma del Examen.
3. Se solicita el informe del examen a Dr. Radiologos Externos.
4. Dr. Envia los Examenes Informados via email, en formato WORD.
5. La Secretaria, debe transcribir todo el informe que viene en Word.
5. Hoy se realiza digitando el en Sistema por medio de Xbrowse y luego grabar la informacion en una Dbf, que tiene 2 campos, Folio y Detalle de Examen.
6. Imprimir el Informe al Paciente.

El Punto 5, el cliente quiere evitar el tiempo de digitacion de las seretarias guardar este contenido en la DBF, por medio de pegar el contenio de alguna forma que permita el acceso a dbf.

Lamentablemente copian los metodos que usan en clinicas, que tienen otros desarrollos en lenguajes de programacion Visual o Net.

Trate de entender cual es el uso que se le da a la Clase Tword, para ver si podia usarla para abrir Office desde el sistema y guardar los datos desde esta clase, pero la verdad, no di con su filosofia de funcionamiento.

Lamento pedir esta ayuda de esta forma.

Desde ya, muchas gracias por toda su ayuda.

Saludos.

Antonio
FWH 22.10 - HARBOUR - PELLES C
remtec
 
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Favor Ayuda Urgente Actualiza Registros DBF Con Word

Postby remtec » Sun Dec 30, 2018 1:53 am

Antonio

Revise FWH\samples\testrtf.prg que indicas, pero no me sirve, como podria grabar en la DBF??

Quedo atento a otras sugerencias.

Muchos Saludos.
Antonio.
FWH 22.10 - HARBOUR - PELLES C
remtec
 
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Favor Ayuda Urgente Actualiza Registros DBF Con Word

Postby Antonio Linares » Sun Dec 30, 2018 8:48 am

Antonio,

Lo que tienes que hacer es guardar el fichero Word, tal cual, en un campo memo de la DBF.

Alias->Documento := MemoRead( "documento.doc" )

Asi nadie tiene que digitar nada :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42203
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Favor Ayuda Urgente Actualiza Registros DBF Con Word

Postby remtec » Sun Dec 30, 2018 4:33 pm

Antonio

Muy buen dia y muchas gracias por tu preocupacion.

Habia pensado usar campo Memo, pero hace un tiempo atras, tuve una experiencia muy mala, una DBF muy grande, que tenia una campo Memo, donde guardaba algo parecido de muchas lineas, un dia arrojo error de corrupcion, se daño el archivo DBT y no pude recuperar la informacion y el cliente no contaba con respaldo, ademas de otros problemas al recuperar los datos, desde ahi, decidi no usarlo. Hoy no se que tan frecuente y seguro sea usar este campo, con las nuevas versiones de Fivewin.

Si me pudieras explicar cual es la funcion que tiene la clase Tword, quizas la interpreto mal, para hacer edicion de datos, vi por ahi en internet nos PRG, en " Send a DBF to Word " con un codigo, pero es desde dbf a word.

Dejo el codigo a ver si hay comentario.

Muchos Saludos
Antonio.

Code: Select all  Expand view  RUN

#include "Fivewin.ch"
 
FUNCTION MAIN()
 
    LOCAL oWord
 
    LOCAL cTxt := ""
 
    oWord = CreateObject( "Word.Application" )
 
    oWord:Documents:Add()
 
    USE TEST
 
    WHILE !EOF()
        cTxt += ALLTRIM( FIELD -> last ) + " " + ALLTRIM( FIELD -> first ) + CHR( 13 )
        SKIP
    ENDDO
 
    CLOSE
 
    oWord:Selection:InsertAfter( cTxt )
 
    FERASE( "CREATO.DOC" )
 
    oWord:ActiveDocument:SaveAs( "CREATO.DOC" )
 
    oWord:Quit()
 
RETURN NIL
 
 
FWH 22.10 - HARBOUR - PELLES C
remtec
 
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Favor Ayuda Urgente Actualiza Registros DBF Con Word

Postby hmpaquito » Mon Dec 31, 2018 9:08 am

No use .dbt sino .fpt. Los .fpt son una roca. Incluso
hmpaquito
 
Posts: 1482
Joined: Thu Oct 30, 2008 2:37 pm

Re: Favor Ayuda Urgente Actualiza Registros DBF Con Word

Postby cmsoft » Mon Dec 31, 2018 2:17 pm

Hola Antonio:
Te dejo otra opcion funcionando.
Aca simplemente creas una carpeta dentro de tu aplicacion donde guardar los documentos con el mismo nombre que el nro de folio. Y que la operadora se encargue de copiar y pegar tal cual lo deja el Dr., y que Word se encargue de editar el documento. En tu tabla DBF no guardas nada, solo el nro de folio y el nombre del paciente.
Crea un documento llamado VACIO.DOC que este vacio, pero podrias tener en el un encabezado y pie de pagina con logo y demas ya configurado, para que cuando cree un documento nuevo tengas un modelo base.
Yo cree una carpeta llamada DOCS, pero la funcion puede servirte, pasandole como parametro la carpeta donde debe guardar los documentos, para ir separando, por ejemplo, por tipo de estudio.
Es un inicio, pero creo que puede serte util.
Code: Select all  Expand view  RUN

#include "Fivewin.ch"
#include "xbrowse.ch"
STATIC oWnd, oBrw
FUNCTION Main()
Local oBar
SET DATE FORMAT "DD/MM/YYYY"
SET DELETE ON
SET CONFIRM ON
SET SOFTSEEK ON
SET 3DLOOK ON
use folios shared new alias "folios"

 DEFINE WINDOW oWnd  TITLE "A/B/M de Folios"
         DEFINE BUTTONBAR oBar  SIZE 60,60 OF oWnd 2010
         DEFINE BUTTON OF oBar ;
            TOOLTIP "Agregar Registro"  ;
            ACTION (Formu( .t. ),oBrw:Refresh());
            PROMPT "Alta" TOP
         DEFINE BUTTON RESOURCE "MODI" OF oBar ;
            TOOLTIP "Modificar Registro"  ;
            ACTION (Formu( .f. ),oBrw:Refresh());
            PROMPT "Modifica" TOP
         DEFINE BUTTON RESOURCE "BAJA" OF oBar ;
            TOOLTIP "Eliminar Registro"  ;
            ACTION (Baja( ),oBrw:Refresh());
            PROMPT "Baja" TOP
         // Este boton cierra la aplicacion
         DEFINE BUTTON RESOURCE "SALE" OF oBar;
            TOOLTIP "Cerrar Ventana" ;
            ACTION oWnd:End();
            PROMPT "Cerrar" TOP
     @ 01,01 XBROWSE oBrw alias "folios";
              COLUMNS "folio","paciente";
              HEADERS "Numero","Apellido y nombre del paciente";
              SIZES 90,2000;
              OF oWnd  
     oBrw:CreateFromCode()
     oWnd:oClient := oBrw
   ACTIVATE WINDOW oWnd valid(cerrar())
RETURN nil

***************************************
** Formulario de altas y modificaciones
STATIC FUNCTION Formu ( lAlta)
LOCAL oGet := ARRAY(8), oBot := ARRAY(3), lRta := .f., aVar := ARRAY(2), oForm
IF lAlta
   aVar[1] := 0
   aVar[2] := SPACE(30)
   ELSE
   aVar[1] := folios->folio
   aVar[2] := folios->paciente
ENDIF

DEFINE DIALOG oForm TITLE IF(lAlta,"Alta","Modificacion") + " de Folios" FROM 05,10 TO 15,90 OF oWnd
   @ 07, 05 SAY "Folio Numero:"          OF oForm PIXEL SIZE 60,12 RIGHT
   @ 22, 05 SAY "Paciente:"              OF oForm PIXEL SIZE 60,12 RIGHT
   @ 05, 70 GET oGet[1] VAR avar[1]   PICTURE "9999999999" OF oForm PIXEL RIGHT WHEN(lAlta)
   @ 20, 70 GET oGet[2] VAR aVar[2]   PICTURE "@!"         OF oForm PIXEL
   @ 35, 70 BUTTON oBot[3] PROMPT "Editar Word"  OF oForm PIXEL  SIZE 50,12;
     ACTION (EWord("Docs",aVar[1]))
   @ 50,05 BUTTON oBot[1] PROMPT "&Grabar" OF oForm SIZE 30,10 ;
           ACTION ((lRta := .t.), oForm:End() ) PIXEL
   @ 50,90 BUTTON oBot[2] PROMPT "&Cancelar" OF oForm SIZE 30,10 ;
           ACTION ((lRta := .f.), oForm:End() ) PIXEL CANCEL
ACTIVATE DIALOG oForm CENTER
IF !lRta
   RETURN nil
ENDIF
IF aVar[1] = 0
   MsgStop("Valores no validos","Error")
   RETURN nil
ENDIF
IF lAlta
   folios->(dbappend())
ENDIF
REPLACE folios->folio WITH aVar[1], folios->paciente WITH aVar[2]
RETURN nil

*************************************
** Cerrar el archivo abierto
STATIC FUNCTION cerrar (  )
close folios
RETURN .t.

***********************************
** Baja de registro
STATIC FUNCTION Baja (  )
LOCAL mrta := .f., oError, nNum := folios->folio
IF folios->(RecCount()) = 0
   RETURN nil
ENDIF
mrta := MsgNoYes("Seguro de eliminar"+CHR(10)+;
                 "el registro código N°:"+STR(nNum),"Atencion")
IF !mrta
   RETURN nil
ENDIF
folios->(rlock())
folios->(dbdelete())
oBrw:Refresh()
RETURN nil


**************************************
** Ejecutar word
FUNCTION EWord(cCamino,nFile)
LOCAL cPathm cFile
cFile := STRTRAN(STR(nFile,10)," ","0")
cPath := hb_CurDrive()+":\"+CurDir()+"\"+ALLTRIM(cCamino)+"\"+ALLTRIM(cFile)+".DOC"
IF !FILE(cPath)
   FILECOPY("
VACIO.DOC", cPath, .f.)
ENDIF
ShellExecute( ,"
open", cPath,,,1 )
RETURN nil
Last edited by cmsoft on Mon Dec 31, 2018 2:20 pm, edited 1 time in total.
User avatar
cmsoft
 
Posts: 1293
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 95 guests