PREGUNTAS CONTESTADAS - FoxPro/Visual FoxPro

 Hay un total de 1456 Preguntas.<<  >> 

    Pregunta:  19120 - CREAR O COPIAR LA ESTRUCTURA DE BASE DE DATOS CON VARIABLES
Autor:  didier mendez valencia
tengo una base de datos fuente llamada \"cobros\" y con ella quiero crear una nueva base de datos con el nombre de la variable.(una base de datos diferente para cada alumno)

Ejemplo:

m.x=12 &&variable
use cobros &&base de datos
copy estruc to m.x &&instruccion que copia la estructura

la primera vez si funciona, pero luego me dice que ya existe.
creo que toma el nombre m.x y no el valor de la variable.
agradesco todo lo que se pueda hacer por ayudarme.
gracias
  Respuesta:  Antonio Estrada
Buenas.

Lo he estado probando, y funciona si pones algo así como:

x="12"
use cobros
copy structure to &x

De todas formas, no veo muy claro lo que quieres hacer, más que nada por lo incómodo que puede llegar a ser el tener que abrir cada tabla para hacer, por ejemplo, un listado.
¿No sería mejor, pienso yo, meter cada alumno en UN REGISTRO de UNA SOLA TABLA?

    Pregunta:  19124 - ERROR "ARCHIVO NO ABIERTO"
Autor:  Mariano Jedrzejewski
Tengo una REd con Windows NT 4.0 y los sistemas desarrollados en Foxpro 2.5 para DOS. Hay un archivo de 130000 registros el dbf ocupa 30 MB y el cdx 8mb. Algunas veces sale cuando deseo abrirlo en forma compartida o exclusiva sale la leyenda "Archivo no Abierto"
La unica forma de abrirlo en borrando el CDX y volverlo a generar
No es el unico bdf de gran tamaño pero es el unico que teien este problema

Envio como esta generado el indice

use &base.almacen/movimien exclusive

index on str(nro_pedido,5)+str(nro_item,2)+cod_art+dtoc(fecha,1)+str(cod_alo,2)+str(cod_ald,2)+str(cod_com,2)+;
str(nro_compro,12)+str(nro_ot,c_lenot)+str(nro_4000,c_lensubot) tag mov_clave additive

index on str(nro_ot,c_lenot)+str(nro_4000,c_lensubot)+dtoc(fecha,1) tag mov_ot additive

index on fecha tag mov_fecha additive

index on str(cod_provee,4)+str(cod_com,2)+str(nro_compro,12)+str(nro_pedido,5)+str(nro_item,2) tag mov_prov additive

index on nro_contro tag nro_control additive

index on nro_vale tag Nro_vale additive
index on cod_art+dtoc(fecha,1) tag mov_art additive

Gracias
  Respuesta:  Juan Carlos Silie
prueba con esto.

use &base.almacen/movimien alias (nombre de la tabla)

dios quiera que te funcione

    Pregunta:  19201 - ERROR AL EJECUTAR EL INSTALADOR DE VF6
Autor:  LUIS EDUARDO BARRETO COLMENARES
Solicito su colaboracion en lo siguiente:
Genere un instalador en Visual Foxpro 6.0, lo instalo sobre un computador que tiene instalado Visual Foxpro 6.0, al ejecutar el programa instalado me sale el siguiente error: "RESOURCE FILE VERSION MISMATCH" "VISUAL FOXPRO CANNOT START. COULD NOT LOAD RESOURCES PRESS F1 FOR HELP".
He realizado lo siguiente:
1)Generar el instalador desde ese computador pero el error persiste.
2)Desinstalar y borrar las librerias dinamicas VFP6RESN.DLL y VFP6RENU.DLL, y generar nuevamente el ejecutable, ejecutarlo y el error continua.
3) Al correr el programa en modo desarrollo corre perfecto entonces tomo los archivos FOXUSER.DBF y FOXUSER.FPT , y obligo al Visual foxpro a tomar estos archivos como sus archivos de recursos pero el error persite.
Me pueden colaborar muchas gracias.
  Respuesta:  JOSE ROLANDO QUINTERO PAZ
Hola
Mira, tu problema no tiene nada que ver con que tenga o no instalado el visualfox en la maquina que se instale ni con los dlls porque al ser un instalador lleva consigo todo lo necesario para que funcione en cualquier maquina que posea windows 95 o superior, la memoria ram, espacio en el disco, etc. En primer lugar tienes que crear los instaladores con la misma version con la que haz compilado los programas ya que si por ejemplo compilo mi programa con la version 5.0 y creo los ejecutables con la 6.0, al instalarlo creara un archivo de recursos para la versio 6.0 y como los programas estan compilados con la 5.0 dara precisamente ese error que mencionas. La otra posibilidad es que al instalarlo te diga que no sea podido instalar correctamente, entonces no ha configurado tu sistema y por lo tanto el problema esta en los instaladores, pero, te repito no toques nada de los archivos que se cargaron al instalar el visualfox porque no tienen nada que ver. La ultima advertencia es que es incompatible tener instaladas dos versiones diferentes de visualfox que , de alguna manera te desabilitan funciones de la otra y te obliga a compilar con una version y a crear instaladores con la otra con los consiguientes resultados.
Espero que tengas suerte.

    Pregunta:  19316 - OCX PARA MANIPULAR IMAGENES DE MAS DE 1 PAGINA
Autor:  OSCAR VERANO
MI CONSULTA ES LA SIGUIENTE, TENGO UN A FORMA EN LA CUAL MUESTRO UNA IMAGEN TIF, A LA CUAL LE PUEDO APLICAR UN POCO DE ZOOM, LA PUEDO ROTAR Y LA PUEDO IMPRIMIR, PERO MI PROBLERMA ES ESTE, HAY ALGUNAS IMAGENES QUE ESTAN COMPUESTAS DE AL PARECER 2 PAGINAS, ¿HAY ALGUN OCX QUE ME PERMITA AVANZAR A LA SIGUIENTE PAG. EN CASO DE QUE ASÍ LO REQUIREA?

DE ANTEMANO MUCHAS GRACIAS

P.D. EL OCX QUE ESTOY USANDO SE LLAMA NED Image ActiveX V2.0 DEMO POR SI LES INTERESA EL OCX
  Respuesta:  OSCAR VERANO
MUCHAS GRACIAS PERO YA PUDE REALIZAR LO QUE NECESITABA CON EL OCX QUE ESTOY UTILIZANDO.

POR AHI SE A ALGUIEN LE INTERESA EL OCX AQUI ESTAMOS, COMO LES COMENTABA ES UN TRIAL PERO LO UNICO QUE HACE ES MOSTRA UNA PANTALLA DEL SOFTWARE AL MOMENTO DE ABRIR EL FORMULARIO.

    Pregunta:  19361 - MOVER EL PUNTERO EL GRID
Autor:  Rene Rafael Dieguez Alburez
tengo un formulario donde se despliegan todos mis datos ahora lo que yo quisiera saber como puedo hacer para que al darle un click a un boton el puntero del grid fuera bajando, gracias!!
  Respuesta:  Antonio Estrada
Buenas.

El "problema" que tienen los GRIDS es que cuando pierden el foco, se desactivan. (Activerow se queda a 0, pierde la línea seleccionada, etc...)
Para evitar esto (no deja de ser un control limitado, por eso yo prefiero hacerme mis propios controles GRID), pon en el evento gotfocus del botón un NODEFAULT, y en el evento CLICK (aparte de ...), un SKIP. Así, al pulsar sobre el botón, el grid no pierde el foco, y se ejecuta el skip sobre el grid.

Oskei?

    Pregunta:  19456 - DECIMAL A HEXADECIMAL
Autor:  jose hinojos
si alguien me puede proporcionar el codigo para convertir decimales a hexadecimales en visual foxpro
  Respuesta:  Antonio Estrada
Aquí lo tienes (las llamadas recursivas son un regalo del cielo)

function dec2hex (ndecimal)
local c1
local c2
if ndecimal < 256
if ndecimal%16<10
c2=str(ndecimal%16,1)
else
c2=chr(ndecimal%16+55)
endif
if ndecimal/16<10
c1=str(int(ndecimal/16),1)
else
c1=chr(int(ndecimal/16)+55)
endif
return c1+c2
else
return dec2hex(int(ndecimal/256))+dec2hex(int(ndecimal%256))
endif

    Pregunta:  19463 - "HERROR INTERNO DE COHERENCIA" AL IMPRIMIR UN REPORTE
Autor:  rene francisco guerrermo mosqueda
tengo el siguiente problema que espero me ayude alguien a resolver dentro de un sistema que elabore genere un reporte el cual al momento de ejecutar me da el siguiente mensaje

herror interno de coherencia
y al oprimir aceptar se cierra

si alguien pude ayudarme se lo agradecere mucho gracias
  Respuesta:  enrique amaya
Instala los spack y no imprimas desde vistas sino desde select
  Respuesta:  wences
El error interno de coherencia en los informes se debe generalmente a que alguna de las tablas que intervienen en el esta mal , es decir , por alguna causa esta corrupta , prueba a comprobar las tablas que intervienen en el mismo , visualizalas , tambien podria ser que el archivo donde se guarda la informacion estuviese mal ( frt y frx ) , intenta abrirlo como una tabla y volver a indexarlo (use el_nombre.frx ) ...

Espero te sirva...

    Pregunta:  19647 - COMO ALMACENO LA CANTIDAD DE COPIAS HECHAS POR UNA IMPRESORA
Autor:  BRUNO RODRIGUEZ
Estoy queriendo desemblover un porgrama que registre el numero de copias que hae una impresora coectada en red y quien las hizo, nombre de la pc u nombre del usuario(mejor).
  Respuesta:  jose Jaimes
Prueba con Sys(0) este de debuelve el nombre del usuario que entro en la red (Novel) y el nombre de la maquina cuando imprimas crea una variable de error si es 0 entonces guarda el registro pues se imprimio con exito OjO no uses el Previe solo mada a Imprimir y listo suerte

    Pregunta:  19858 - BASE DE DATOS ACCESS
Autor:  Jaime Díaz Espinoza
Para una empresa me ha pedido una pequeña aplicación en visual fox pero con bases de datos access, actualmente uso las bases de datos del mismo visual fox, mi pregunta es si access tambien tiene desencadenantes como lo tiene visual fox y sqlserver(trigerrs), si alguno de uds., saben por favor escribanme a mi correo de como se hace y les estare muy agradecido.

muchas gracias
  Respuesta:  Julio Arango
Access no tiene triggers nativos, se deben simular en los formularios propios de access.
Si deseas conectarte a access desde visual foxpro, no podras simular los desencadenantes, al menos NO de forma facil.

Mi consejo es que busques por otro lado los triggers, no en access

Espero que esto te ahorre tiempo

    Pregunta:  19875 - MOSTRAR NUMEROS GRANDES EN FOXPRO PARA MS-DOS
Autor:  Antonio Jiloth Pereztroika
hola la presente es para solicitar su apoyo al respecto tengo una rutina de facturacion pero mi jefe pide que en la pantalla de ventas al momento que se le cobre al cleinte el vea los numeros grandes del monto. es decir si son

$ 20.36 que se vena grandes ( indico que estoy trabajando en foxpro para ms-dos ) asi de que debere aplicar el codigo ALT+177 del codigo ascii..

Gracias
  Respuesta:  Antonio Estrada
No sería mejor utilizar los códigos ALT+220,(medio cuadro inferior), ALT+223 (medio cuadro superior) y ALT+219 (cuadro completo) para crear una matriz de números?
matriz[2,1]=chr(223)+chr(223)+chr(219)
matriz[2,2]=chr(219)+chr(223)+chr(223)
matriz[2,3]=chr(223)+chr(223)+chr(223)
este elemento sería para dibujar el 2. Algo así como...

línea 1 OOO
O
línea 2 OOO
O
línea 3 OOO

Luego solo tienes que hacer una rutina que pase el valor a cadena y componer la salida:

cadena1=""
cadena2=""
cadena3=""
for a=1 to len(cadena)
do case
case substr(cadena,a,1)="1"
cadena1=cadena1+matriz[1,1]
cadena2=cadena2+matriz[1,2]
cadena3=cadena3+matriz[1,3]
case substr(cadena,a,1)="*"
cadena1=cadena1+matriz[11,1]
cadena2=cadena2+matriz[11,2]
cadena3=cadena3+matriz[11,3]
...
y así para cada caracter
...
endcase

luego solo tienes que mostrar las tres cadenas resultantes
@1,1 say cadena1
@2,1 say cadena2
@3,1 say cadena3

Solo hay que tener un poco de paciencia y maña para dibujar los números. Si no te ves con tino, te envio una serie de gráficos compuestos como te he indicado arriba.

Suerte

|<  <<  73 74 75 76 77 78 79 80 81 82 83  >>  >|