Bienvenido y disfruta el nuevo diseño del sitio web.... agradecería me envíes tus comentarios acerca de los cambios realizados

Para descargar cualquier archivo es necesario estar registrado y hacer click en el titulo del archivo a descargar

Determinar si un equipo o pagina web esta ONLINE

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Vamos a utilizar el WSH para realizar un ping y
determinar si un PC o sitio web esta On Line; enviaremos un comando PING de
MS-Dos y evitaremos que se muestre la ventana negra utilizando el WSH.


Local
lOnline

oWSH =
Createobject("WScript.Shell")

lOnline = oWSH.
Run("ping
192.168.0.12"
,0,"True")



If
lOnline = 0

    Messagebox("ping
OK!"
)


Else

   
Messagebox
("ping
ERROR!"
)


EndIf



Release
oWSH


 

Por: David Amador T

Ejecutar un comando de MSDOS sin mostrar la ventana

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Esta es otra forma de ejecutar desde VFP un
comando de MSDOS sin mostrar la típica ventana negra.


En el ejemplo podemos ver una forma de registrar
un activex.




Declare Long
WinExec
In
kernel32 ;

   
STRING
lpCmdLine ,
Long
nCmdShow



cCmd = "RegSvr32.exe
micontrol.ocx"



=WinExec(cCmd, 0)



Note;0 - Se ejecuta, pero no se hace Visible)

;1 - la Ventana se muestra Normal

;2 - minimizado ;3 - Maximizado

;4 - Tamaño Normal, pero sin Foco





Por: David Amador T

Actualizar un formulario con API

Visual Fox Pro, Ejemplos - Código fuente, Funciones API Comentarios ( 0 ) »
Ya sabemos que podemos actualizar el formulario
utilizando el THISFORM.REFRESH pero podemos hacerlo también a través API
obligando a que se vuelvan a "repintar" los objetos, esto es bastante útil
cuando estamos realizando un proceso y los cambios no son reflejados en el
objeto, a veces solucionamos el problema con un Inkey(0.1) pero la mejor forma
de hacerlo es con el API de Windows.

Esta
API también nos permite configurar como deseamos que sea la actualización del
formulario y sus objetos




#
DEFINE
RDW_INVALIDATE 0x0001

#
DEFINE
RDW_INTERNALPAINT 0x0002



#DEFINE
RDW_ERASE 0x0004

#
DEFINE
RDW_VALIDATE 0x0008



#DEFINE
RDW_NOINTERNALPAINT 0x0010

#
DEFINE
RDW_NOERASE 0x0020



#DEFINE
RDW_NOCHILDREN 0x0040

#
DEFINE
RDW_ALLCHILDREN 0x0080



#DEFINE
RDW_UPDATENOW 0x0100

#
DEFINE
RDW_ERASENOW 0x0200



#DEFINE
RDW_FRAME 0x0400

#
DEFINE
RDW_NOFRAME 0x0800

 


DECLARE INTEGER
RedrawWindow
IN
WIN32API ;

   
INTEGER hWnd,
INTEGER
nUpdateRect, ;

   
INTEGER
nUpdateRegion,
INTEGER
nFlags



RedrawWindow(Thisform.HWnd,0,0,RDW_INTERNALPAINT + RDW_UPDATENOW)

Por: David Amador T

Convertir tabla a Word

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Este es un truco bastante sencillo de como puedes
pasar tus tablas a Word; se los recomiendo cuando la tabla no tengo demasiados
campos.



En el ejemplo que voy a mostrar convertiré la tabla "Shippers" de Northwind
(Viene con VFP) a Word.


Set Safety Off

Open Database Home
(2) +
"northwind\northwind"



Use
Shippers
Shared

COPY TO
c:\TempDatos
TYPE CSV



oWord =
CREATEOBJECT("Word.Application")


oDoc  = oWord.Documents.Open("c:\TempDatos.CSV")

oRange = oDoc.
Range()

oRange.ConvertToTable(
",")


oWord.Visible
= .T.


Close Databases all




Usted podría adaptar este ejemplo y a través de
automatización hacerle algunas modificaciones al documento de Word.








 




Por: David Amador T

Copiar directorios

Visual Fox Pro, Trucos Comentarios ( 0 ) »
En este ejemplo copiaremos directorios utilizando
el XCOPY de MS-DOS, pero lo haremos a través de la función ShellExecute del API
de Windows para evitar que la ventana del MS-DOS sea visible.


DECLARE INTEGER
ShellExecute
IN
shell32;

   
INTEGER hwnd, STRING
lpOperation,;

   
STRING
lpFile,
STRING
lpParameters,;

   
STRING
lpDirectory,
INTEGER
nShowCmd



WAIT WINDOWS

"Copiando..."
NOWAIT


=ShellExecute(0,
"Open","XCOPY.EXE","C:\DirOrigen
c:\DirDestino /t"
,"",0)


Wait Clear


 


Por: David Amador T

Determinar si estas conectado a InterNet

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Otra forma para determinar si estas conectado a
Internet; en este caso sino se está conectado se intenta conectar.

#Define
FORCE 1


DECLARE INTEGER
InternetCheckConnection
in
wininet;

  STRING
lpszUrl, INTEGER
dwFlags,;

  INTEGER
dwReserved


  RETURN
(InternetCheckConnection(tcURL,
FORCE, 0) == 1)


Por: David Amador T

Uniendo reportes en VFP 9

Visual Fox Pro, Trucos Comentarios ( 0 ) »
El VFP 9 trajo muchas características
interesantes, está es una de las que me gusta.



Puedes unir varios reportes y mostrarlos como si fueran uno sólo.

Close
Databases All

Open Database
(Home(2)
+
"Northwind\northwind.dbc")


Use
northwind!shippers



Create Report
shippers
From
shippers


Use
northwind!Suppliers


Create Report
Suppliers
From
Suppliers



Report Form
shippers
Object Type
1
Nopageeject

Report Form
Suppliers
Object Type
1
Noreset


 


Por: David Amador T

Importar datos desde Excel a VFP

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Está es un pregunta muy habitual; en el siguiente
ejemplo veremos como importar datos desde Excel a VFP sin necesidad de tener
Excel instalado, puesto que lo haremos a través del Driver ODBC de Excel.


cFileXLS =
Getfile("XLS")


cConn = "Driver={Microsoft
Excel Driver (*.xls)};"
+;

        "DriverId=790;Dbq="+cFileXLS+;

       
";DefaultDir="+Justpath(cFileXLS)+";"



nH =

SqlStringConnect
(cConn)



SQLTables
(nH,"",
"SheetNames")



Scan

    cTabla =
Trim(SheetNames.Table_Name)

   
cCursor =
Chrtran(cTabla,"
$"
,"_")

   
SQLExec(nH,'Select
* From ['
+cTabla+']',cCursor)

   
Select
(cCursor)

   
Browse

EndScan


SQLDisconnect(nH)


 

Por: David Amador T

Validar si una de tus tablas está corrupta

Visual Fox Pro, Trucos Comentarios ( 0 ) »
El simple proceso de abrir tus tablas te puede
ayudar en ciertos casos a determinar si tiene algún problema o está corrupta.


Aquí tiene como puedes realizar este proceso:




nTablas =
Adir(aMisTablas,"*.dbf")



On Error
?aMisTablas[x,1]
+
" tiene errores"



For
x = 1
To
nTablas

    Use
aMisTablas[x,1]
Shared

EndFor


Use

On Error

Por: David Amador T

Botón en el Screen y ejemplo de BindEvents

Visual Fox Pro, Trucos Comentarios ( 0 ) »
En este truco veremos como podemos agregar un
botón en el Screen de VFP y darle funcionalidad utilizando el BindEvents


Public
oHnd


oHnd = Newobject("MiClick")



With _Screen

    .AddObject("CmdBoton",
"CommandButton")

   
Bindevent(_Screen.CmdBoton,"Click",oHnd,"ReClick")


   
With
.CmdBoton

       
.
Caption
=
"Botón"

       
.Top
= 10

       
.
Left
= 10

       
.
Height
= 27

       
.
Visible
= .T.

   
Endwith

   
Return

Endwith


Define Class MiClick
As Session

   
Procedure
ReClick

       
Messagebox("Hola
a todos"
)

   
Return

EndDefine






Por: David Amador T

Enviar email con MAPI

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Este es un completo ejemplo de como puedes enviar
email utilizando MAPI; tienes que tener en cuenta que es necesario que tengas
configurada una cuenta de correos en tu PC para poder probar este ejemplo.


Local
oSession
As
MSMAPI.MAPISession


Local
oMsg
As
MSMAPI.MAPIMessages



oSession =
Createobject
("MSMAPI.MAPISession")

oMsg =
Createobject("Msmapi.MapiMessages")


oSession.DownLoadMail = .F.

oSession.SignOn

oMsg.sessionid = oSession.sessionid

cDestino =
"para@dominio.com"



With
oMsg

   
.compose

   
.MsgIndex = -1

   
.msgsubject =

"Titulo"

   
.msgnotetext =
"Texto del mensaje"

   
.AddressResolveUI = .F.

   
.RecipAddress = cDestino


   
* En caso que desee
adjuntar archivos

   
* En el ejemplo se adjuntas 2 archivos

   
*------------------------------------------

   
.AttachmentIndex = 0

   
.AttachmentName =

"datos1.ext"

   
.AttachmentPathName =
"C:\datos1.ext"

   
.AttachmentIndex = 1

   
.AttachmentName =

"datos2.ext"

   
.AttachmentPathName =
"C:\datos2.ext"

   

*-------------------------------------------


   
.Send

   
oSession.signoff


EndWith



Release
oMsg


Release
oSession


 


Por: David Amador T

Crear acceso directo

Visual Fox Pro, Ejemplos - Código fuente Comentarios ( 0 ) »
Crear acceso directo.
Por: David Amador T

Almacenar en tabla

Visual Fox Pro, Trucos, Ejemplos - Código fuente Comentarios ( 0 ) »
PRG para almacenar en una tabla cualquier clase de archivo...BUENO
Por: David Amador T

Animación Fácil

Visual Fox Pro, Ejemplos - Código fuente Comentarios ( 2 ) »
Un ejemplo de animar una imagen desplazándose de un lugar a otro.
Por: David Amador T

Combo para Autocompletar

Visual Fox Pro, Ejemplos - Código fuente Comentarios ( 2 ) »
Implementación de Auto completar en un Combo Box.
Por: David Amador T