PREGUNTAS CONTESTADAS - FoxPro/Visual FoxPro

 Hay un total de 1456 Preguntas.<<  >> 

    Pregunta:  1774 - ACTUALIZAR TABLAS A TRAVES DE ODBC
Autor:  Nelson Pinto
Quisiera saber como actualizo mis tablas que están en Access o en cualquier otro motor usando VFP 5.0 a través de ODBC.
Gracias por la ayuda que me puedan suministrar.
  Respuesta:  JOSE LUIS CORDOVA ASTO
HOLA :
TE ENVIO UNA ALTERNATIVA.
UNA VEZ CREADO LA CONEXION CON ODBC, CREA VISTAS REMOTAS QUE SE ENCUENTRA DENTRO DEL PROYECTO DE VFP. DEMTRO DEL CUAL TRABAJARAS CON BUFFER DE MEMORIA (TABLEUPDATE-Para actualizar,TABLEREVERT-Para revertir). UNA VEZ CREADA LAS VISTAS REMOTAS LAS UTILIZARAS COMO TABLAS NORMALES.
  Respuesta:  Coco A.
Hola, esto no es muy complicado, lo que debes hacer es crear vistas remotas en tu base de datos de vfox, al crearlas te va a pedir el tipo de conexion, esto lo puedes definir creando una DNS de usuario con el ODBC Administrator (de windows) o ingresando los datos de la cadena de conexion en la base de datos de vfox (estos datos te pregunta cuando creas una nueva conexion), luego creas tus vistas y en la parte de criterios de actualización le das un check en ENVIAR ACTUALIZACIONES SQL (no olvides marcar cuales son tus campos clave (PK Unico) y un check en los campos que vas a actualizar), lo grabas y listo, luego ya en tu form, en el entorno de datos, la añades (selecionas vistas en el dialogo) y te recomiendo ponerle buffermode a 5 (para que puedas usar tableupdate y tablerevert).

Eso seria todo, la vista remota se comporta como una tabla local, eso si, si lo que quieres es hacer un mantenimiento, ponle a la propiedada NoDataOnload = .T. para que no te traiga ningun registro, y la manejas igual que una tabla de fox, le haces un append blank, un TableRevert() sino quieres grabar y un TableUpdate() si quieres grabar (que vendria a ser un COMMIT de SQL).

Espero te Sirva.
Suerte!

Saludos

Coco

    Pregunta:  1804 - CORREO ELECTRÓNICO AUTOMÁTICO POR MEDIO DEL VFP
Autor:  Manrique Suárez Aguilar
En el lugar que trabajo tenemos en servidor NT de correos con exchange y todo los compañeros accesazos nuestros correos utilizando outlook. Es posible y como se pueden enviar mensajes por medio del correo por ejemplo a administrador del inventario, cuando se agotan existencias de algún producto en forma automática, que el mismo sistema de inventarios en vf5 escriba el mensaje y lo envié sin que medio ninguna participación humana.

Gracias
  Respuesta:  Ramsés Uscanga Barrientos
Mira, para tu caso especifico, primero que todo debes hacer la rutina que cheque la existencia del inventario, y cuando se detecte algun faltante, puedes agregar dos controles OLE, el session y _message a tu formulario que va a generar esos mails, el codigo que genera el mail es algo parecido a esto

thisform.session.SignOn ´Abre la sesion de correo´
thisform._message.SessionID=thisform.session.SessionID ´Le asigna un numero a esa sesion´
thisform._message.Compose ´Genera un mensaje nuevo´
thisform._message.RecipDisplayName = ´Aqui pones la dirección electronica´
thisform._message.MsgSubject = ´Aqui pones el asunto del mensaje´
thisform._message.MsgNoteText = ´Aqui pones el cuerpo del mensaje, puede ser el texto que tu quieras´
thisform._message.attachmentindex=0 ´Este sirve para mandar archivos´
thisform._message.AttachmentPathName=´Aqui le das la ruta de el archivo que vas a enviar´
thisform._message.Send(.f.) ´Este envia el mensaje´
thisform.session.SignOff ´Cierra la sesion´

Algo bien importante, debes tener abierto tu programa de correos al momento de ejecutar todas estas rutinas y logicamente estar conectado a internet.
Espero te sirva.....

Saludos desde Veracruz, veracruz. México

    Pregunta:  1813 - REPORTES DE VFP 6.0 A EXCEL
Autor:  Marco Guerrero Gutierrez
Como puedo presentar un reporte generado y/o diseñado en VFP 6.0 a Microsoft Excel.
El Cristal Report de Visual Basic me permite uan opcion que es exportar y grabar como excel 5.0.
Como lo puedo realizar en VFP hacia EXCEL para que salga identico como en el reporte generado en VFP.

Gracias de antemano
  Respuesta:  Manuel Vargas
Compañero el problema que tienes lo vivi hace un tiempo, el Visual FoxPro tiene una opción de EXPORT pero solo funciona para DBF a EXCEL..

- Para hacer el reporte y este quede bien tiene que hacer lo como un objeto OLE.

- Realizar la programación y utilizar todos los recursos que Visual FoxPro te da para este fin..

- Cuentame como te va...

    Pregunta:  1821 - RESGUARDAR TABLAS EN VFP5
Autor:  german rocco
Como puede resguardar la tablas que grabo junto a mi aplicacion para que nadie pueda entrar a ellas o simplemente que no las borren por descuido o no...
gracias
  Respuesta:  joherick nuñez
mira amigo esta opcion es DOS te permite oculta archivo o carpeta
los puedes colocar en archivo.bat y listo despues solo tendras que dar clis sobre el para que se oculte el archivo

coloca esto en el blog de notas
attrib +r +a +s +h <nombre archivo> &&oculta
attrib -r -a -s -h <nombre archivo> &&se visualiza

si crees que no te funciono dimelo y te mando un codigo en vbScrip que hace lo que te digo

bueno espero te ayude si no guarda los codigos que en futuro te serviran haci como lo hice yo
  Respuesta:  Ricardo Soto
Hace unos dias me encontre un freeware llamado MAGIC FOLDER, que te permite ocultar los directorios dentro del explorador de windows, no me recuendo exactamente la direccion de internet.
Espero te sirva de algo. Saludos

    Pregunta:  1860 - MENU EN VFP 3.0
Autor:  JORGE MAGAÑA
COMO SE PUEDE DESACTIVAR POR COMPLETO EL MENU POR DEFAULT DE VISUAL FOX, YA QUE AL TRABAJAR CON UN MENU PERSONALIZADO PARA UN SISTEMA, NO LO DESACTIVA DEL TODO, SINO QUE DEJA ACTIVA LA OPCION DE FORMATO. COMO LE PUEDO HACER PARA DESACTIVARLA POR COMPLETO.
  Respuesta:  Raul Peñafiel
Puedes usar :

SET SYSMENU TO DEFA
SET DYDMENU ON / OFF

    Pregunta:  1869 - DESCOMPILAR UN PROGRAMA
Autor:  José Daniel Ayrám
Saludos!!
¿Existe alguna manera de conseguir el codigo fuente de un programa a través de su ejecutable en Fox Pro para DOS ó Para Windows?
  Respuesta:  Felipe Avinzano González
Existe una utilidad llamada "ReFox" que sirve para generar ficheros fuentes a partir de un ejecutable de Fox, a su vez esta herramienta te permite "encriptar" el Exe con una password, de tal forma que cuando alguien intente descompilar tu .EXE no podrá hacerlo a menos que conozca la Password.

Puedes encontrar mas información en la siguiente dirección: www.danysoft.com/refox.htm

    Pregunta:  1895 - CAMBIA TIPO DE PRESENTACION EN PANTALLA
Autor:  Ricardo Alberto Soto
AL generar un form en una maquina y trasladarlo a otra cambia el tamaño de los fonts y el form. Como lo mantengo con el mismo tamaño ?.
Gracias de antemano por la respuesta.
  Respuesta:  Marcelo Siles
Hola, prueba colocando estas líneas al inicio del programa:

DO CASE
CASE SCOLS()=80 && Detecta Resolución 480 x 640
MODIFY WINDOW SCREEN FROM 0,0 TO 36,80 FLOAT
CASE SCOLS()=100 && Detecta Resolución 800 x 600
MODIFY WINDOW SCREEN FROM 5,11 TO 40,89 FLOAT
ENDCASE

Lo que hace es modificar la posición de la ventana principal de FoxPro. Después de muchas pruebas ésto me dió buen resultado. Saludos desde Rosario - Argentina.
  Respuesta:  Manuel Vargas
- Compañero segun entendi por tu pregunta es que al realizar tus pantallas en tu computadora la configuración del monitor puede que es 800x600 y al instalar en otra maquina esta este con 640x480 debes cambiarlo.

- Con los tipos de letra lo mismo en tu maquina tienes tipos letras instalados que la otra no tiene REVISALOS y si puedes instalar los tipos que utilizaste el problema se corrige automaticamente.

- cuentame como te fue.

    Pregunta:  1896 - DESACTIVACION DE TECLAS EN FOX PROW
Autor:  HECTOR IVAN RINCON R
En my empresa tengo un computador con windows 95 y esta conectado a la red mediante windows nt server 4.0, el problema es que cuando ejecuto una aplicación de red hecha en fox - prow 2.0 para d.o.s y minimizo para entrar a fox prow 2.6 para windows, se me presenta el siguiente problema por ejemplo la orde close all, cuando digito la "e" inmediatamente me ejecuta el explorador, o cuando digito la "m" llama la papelería de reciclaje, o presiono la "q" me activa las propiedades de la pantalla, esto dificulata mucho my trabajo y no se como desactivar esto.
agradeciendo por la colaboracion prestada y quedando pendientes de su respuesta
  Respuesta:  Antonio H. Morán
El comando utilizado para la desactivación o asignacion de tareas a las teclas de función es ON KEY LABEL...
Por ejemplo si desea asignar una tarea a una tecla de funcion puede hacer lo siguiente.

*** Asignando una tarea a F5
ON KEY LABEL F5 DO NADA
.
.
.
PROCEDURE NADA
* NO HACE NADA.
RETURN && ESTE PROCEDIMIENTO, NO HACE NADA.

EL EJEMPLO ANTERIOR LE INDICA A FOX QUE AL PRESIONAR F5 CORRA EL PROCEDIMIENTO NADA, EL CUAL EFECTIVAMENTE NO HACE NADA...

PARA REGRESAR LA PROGRAMACION ORINAL A DICHA TECLA PUEDE HACER LO SIGUIENTE

ON KEY LABEL F5 && UNA SOLA TECLA

ON KEY && REGRESA LA PROGRAMACION ORIGINAL A TODAS LAS TECLAS

BUENO ESPERO QUE LE SIRVA UN POCO.
  Respuesta:  Alberto Macias
Puedes probar con ON KEY LABEL, asignandole otro valor a la tecla que quieres desactivar.

    Pregunta:  1898 - AYUDA EN GRID DE VFP5.0
Autor:  osbaldo ramirez
NECESITO AYUDA

TENGO UN UNOS 4 TEXTBOX PARA LLENAR UN GRID QUE ESTA ABAJO DE ELLOS,ESTE GRID TIENE UNA TABLA TENGO BOTONES GUARDAR, ELIMINAR.

LLENO LOS TEXTBOX Y OPRIMO GUARDAR ESTO HACE QUE LA INFORMACION SE ALMACENE EN LA TABLA QUE TIENE EL GRID, Y SE VISUALICE. HASTA AQUI ESTA BIEN

PROBLEMA:
ES QUE AL SELECCIONAR UN REGISTRO OPRIMO ELIMINAR Y SI ELIMINA DE LA BASE DE DATOS, PERO EL GRID NO SE ACTUALIZA, INCLUSO SE PONE TODO EN BLANCO.
Y NO SE VE NADA. YA UTILICE REFRESH Y NO FUNCIONA NECESITO AYUDA DE VERDAD HE LEIDO OTRAS AYUDAS PERO NADIE TE DICE COMO.

ESPERO UN GRANITO DE AYUDA.
GRACIAS
  Respuesta:  Carlos Julio Cardozo Santa
** Antes de cargar el programa que hace la grilla, deberá colocar:

SET DELETE OFF && Para que los registros eliminados no se visualicen
SET REFRESH TO 1,1 && Para que los intervalos de refresco en la grilla
***&& se ejecuten a este tiempo.
** ejecute el programa de grilla y me cuentas. Caho

Tema completo de ayuda.
SET REFRESH (Comando)

Vea también

Determina si su pantalla mostrará o no los cambios que hagan en los registros otros usuarios de la red.

Sintaxis

SET REFRESH TO <expN1>
[, <expN2>]

Comentarios

Las tablas pueden abrirse en una red para uso compartido. Es posible que los registros que está visualizando, estén siendo editados por otros usuarios de la red. Utilice
SET REFRESH para especificar si las ventanas Examinar se actualizarán cuando otros usuarios de la red hagan cambios.
SET REFRESH afecta a los registros visualizados en una ventana Examinar, abierta con BROWSE, CHANGE o EDIT. Los campos memo abiertos para edición en una
ventana Examinar también se modifican. SET REFRESH especifica con que frecuencia se actualizan estas ventanas.
SET REFRESH puede utilizarse también para especificar con que frecuencia se actualizan los datos de su estación de trabajo mediante el búfer local.

Cláusulas

<expN1>

La expresión numérica <expN1> especifica con qué frecuencia se actualiza una ventana de edición de memos o Examinar. <expN1> es el número de segundos entre
actualizaciones y puede ser un valor entre 0 y 3.600; el valor predeterminado es 0 segundos. Cuando <expN1> es un valor distinto de cero y otros usuarios cambian los
registros que usted está viendo, los registros que usted está viendo se actualizarán cuando transcurra el intervalo de refresco. No se actualizarán los registros que está
viendo si <expN1> es 0.
FoxPro intentará bloquear un registro cuando usted intente modificar un registro en una ventana Examinar. Independientemente del ajuste de SET REFRESH, si el
registro que intenta bloquear está bloqueado por otro usuario de la red, recibirá el registro actualizado cuando el otro usuario libere el bloqueo. También podrá aparecer
el mensaje "Registro modificado".

<expN2>

Las versiones de red de FoxPro almacenan parte de las tablas en el búfer de memoria de su estación de trabajo. <expN2> especifica con qué frecuencia se actualizan
estos búfers de datos con los datos actuales de la red. <expN2> es el número de segundos entre las actualizaciones del búfer. El valor predeterminado de <expN2> es
5; puede especificar un valor entre 0 y 36.000. Los búfers no se refrescarán nunca si <expN2> es 0.
Si especifica un valor para <expN1> distinto de 0, pero no incluye <expN2>, <expN2> se establecerá con el mismo valor que <expN1>. Sin embargo, <expN2> se
establecerá a 5 si especifica 0 para <expN1> y no incluye <expN2>.
Puede mejorarse el rendimiento aumentando el valor de <expN2>.
  Respuesta:  Levi Granda Garcia
a mi me paso lo mismo ...y realize lo siguiente para solucionar el problema:

solo debes posicionate al inicio de la tabla despues que hayas borrado el registro:

sele tabla
if recno()>0
delete
else
tablerevert(.f.)
endif
go top
thisform.grid.refresh
  Respuesta:  Antonio H. Morán
En verdad lo que esta pasando es que, durante el proceso la tabla se esta cerrando, lo que tiene que hacer es verificar en que parte del proceso se cierra la tabla, y evitar que se cierre. En los grid cuando la tabla se cierra no tiene de donde tomar la informacion por esta razon se pone en blanco...
  Respuesta:  Juan Montiel
Eso es algo muy sencillo.., con lo que estas realizando debe desaparecer el registro del Grid, claro siempre y cuando el grid este linkeado a la tabla de la que borras.

solo ejecuta
=thisform.grid.refresh()

Con eso ya no aparecera el registro borrado...., logicamente la intruccion SET DELETE debe de estar activa.(ON)

No debes tener problemas..., de ser asi escribeme.
  Respuesta:  eye
Holasssamigos:
Al parecer en vez de eliminar un registro estas eliminado la tabla. Fijate bien si eso ocurre. La solución si es que eliminar la tabla está en tus planes es:

THISFORM.Grid1.rowSource = ""
** ahora va el codigo de eliminacion

De esta forma el grid no se pondra blanco.
Si es que ese no es el problema, sería mejor que me mandes el código que utilizas para la eliminación del registro.

Chau.-

    Pregunta:  1899 - GENERAR REPORTES CON FORMATO HTML
Autor:  FERNANDO BAGNASCO
Estamos generando reportes con el REPORT pero este solamente genera reportes con formato texto.
Queremos ahora generar reportes con formato HTML y hemos usado una clase que viene con el VFP 6.0 pero no hemos obtenido exito.
La pregunta es si se puede y cómo debemos hacerlo.
Gracias por la respuesta.
  Respuesta:  Victor F. Rodriguez
Yo estoy aprendiendo algo sobre ese asunto. Si haces una prueba de un reporte, por ejemplo, de una lista de clientes, en un programa editor de paginas HTML como Netscape, o Microsoft Publisher, luego lees el Source code, veras que casi todos ellos tienen un "tag" para empezar un formato de texto, y otro "tag" para terminar.
Por ejemplo: <FONT BOLD>Este es el titulo</FONT>
Yo he creado una base de datos con un campo descriptivo del tipo de tag, un campo memo con el formato que comienza y un campo memo con el formato que termina. Lo he tomado de tantas paginas que aparecen en internet. Uso el que mas me guste. Luego genero un reporte con la base de datos de clientes y la base de datos HTMLDBF. Algo como esto:
SELECT 0
USE HTMLDBF

store iniTag to firsttag
store endTag to lasttag

SELECT 0
USE CUSTOMER
SCAN
STORE initag+ALLTRIM(NOMBRE)+;
+ALLTRIM(direccion1) + " "+alltrim(direccion2)+;
lasttag+chr(13) to htmltxt

*** Aqui puedes introducir el contenido del resultado de esta variable en un campo memo de una base de datos que puedes crear antes de iniciar el SCAN, como TEMPHTML.DBF y un campo memo llamado notas, donde con un REPLACE NOTAS WITH htmltxt ADDITIVE vas guardando todo el resultado del SCAN

ENDSCAN

Victor F. Rodriguez / Santo Domingo, Republica Dominicana
[email protected]
  Respuesta:  Vidal Ramiro Valentin Ramos
Yo tengo un codigo que ayudaria solucionar tu pregunta
escribeme

|<  <<  16 17 18 19 20 21 22 23 24 25 26  >>  >|