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

Compilando código desde tiempo de Ejecución

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Una de las funciones más
robustas e importantes que han sido agregadas a VFP 7
es Execscript
. En VFP 6 se puede utilizar Compile (service Pack 3
creo). Permite compilar código desde campos memos, texto, etc y
compilarlo.


lcNombreArchivo
= Sys(2015) + ".prg"

Strtofile(CampoMemo, lcNombreArchivo
)

Compile (lcNombreArchivo)   
&& en VFP 6 SP 3 o superior


DO (lcNombreArchivo)

ExecScript(CampoMemo) 
&&  
En VFP 7


Por: David Amador T

Creando tablas en Word con VFP a través de Automatización

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Un ejemplo como podemos
crear tablas en Word con datos de tablas de VFP, a través de
Automatización.



USE
employee

lcTemp = SYS(2015)+".txt"



COPY fields empl_id, last_name
TO (lcTemp) TYPE csv

 

lnFields = 2

 

_ClipText = chrtran(FileToStr(lcTemp),["],"")

 

erase (lcTemp)

 

#define wdSeparateByCommas 2



oWordDocument=createobject("word.application") && Create word object

 

WITH oWordDocument

              
.documents.add

        

               
WITH .ActiveDocument

                       
.Range.Paste

                       
.Range.ConvertToTable(wdSeparateByCommas,,lnFields)

               
ENDWITH

     


             
.visible = .t.

             
.Activate

ENDWITH

 

Por: David Amador T

Encriptar con clase _crypt

Visual Fox Pro, Trucos Comentarios ( 2 ) »

oCrypt = NEWOBJECT("_cryptapi",HOME()+"ffc\_crypt.vcx")

cEncryptedString = []
cEncryptedString2 = []

oCrypt.encryptSessionStreamString("Encriptando Texto","clave", @cEncryptedString)


Por: David Amador T

Gráficos con Excel y con buenos efectos

Visual Fox Pro, Trucos Comentarios ( 1 ) »
Uno de los temas más
solicitados a mi correo son los gráficos; este es un BUEN ejemplo de como
hacerlo, y además agregándole un gran efecto.


LOCAL objXL, objXLchart, intRotate



objXL = CreateObject("Excel.Application")

objXL.Workbooks.Add

objXL.Cells(1,1).Value = 50

objXL.Cells(1,2).Value = 10

objXL.Cells(1,3).Value = 15

objXL.Range("A1:C1").Select



objXLchart = objXL.Charts.Add()

objXL.Visible = .t.

objXLchart.Type = -4100



For intRotate = 5 To 180 Step 5

     
objXLchart.Rotation = intRotate

Next



For intRotate = 175 To 0 Step -5

     
objXLchart.Rotation = intRotate

Next


Por: David Amador T

Determinar el Serial del Disco con WSH

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Otro
de los temas de bastante consulta es como obtener el Serial de un Disco,
esta forma es súper sencilla y con poco código.




oFS=CreateObject("scripting.filesystemobject")
? oFS.Drives(
"c:\").SerialNumber


Por: David Amador T

Impedir que cambien el tamaño de las Columnas de un Grid

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Si quiere que nadie cambie
el tamaño de las columnas de un grid, puede utilizar esta forma.


THISFORM.Grid1.SetAll("Resizable", .F.,
"Column")


Por: David Amador T

Copiar el contenido de dos archivos de Texto en Uno

Visual Fox Pro, Trucos Comentarios ( 1 ) »
Este ejemplo demuestra como
podemos copiar dos archivos o más en uno solo.


RUN COPY
 Archivo1.txt +
Archivo2
.txt  Destino.txt



Otra forma seria utilizando la función
strtofile



strtofile(filetostr("Archivo1.txt") + filetostr("Archivo2.txt"),
"Destino.txt")


Por: David Amador T

Copiar archivos utilizando WSH

Visual Fox Pro, Trucos Comentarios ( 0 ) »
De las formas más sencillas
de copiar y mover archivos y carpetas.


ofs = CreateObject("scripting.filesystemobject")

ofs.copyfolder("c:\Origen","e:\Destino")


Por: David Amador T

Desplazarse por un Grid

Visual Fox Pro, Trucos Comentarios ( 1 ) »

Forma de avanzar o retroceder dentro de un grid.


Thisform.Grid1.DoScroll(2)


Thisform.Grid1.DoScroll(3)



Donde los parámetros de
este método son los siguientes:


0 Desplazamiento hacia arriba

1 Desplazamiento hacia abajo

2 Desplazamiento retroceso de página

3 Desplazamiento avance de página

4 Desplazamiento a la izquierda

5 Desplazamiento a la derecha

6 Desplazamiento página a la izquierda

7 Desplazamiento página a la derecha


Por: David Amador T

Almacenar Grafica en una tabla de VFP

Visual Fox Pro, Trucos Comentarios ( 0 ) »
Este tema es muy
solicitado. Muchas veces necesitamos almacenar una grafica en una tabla de
VFP, este es un ejemplo


cArchivo = GetFile()



Select Tabla

Append Blank

Append General Tabla.Campogral From (cArchivo)


Por: David Amador T

Conocer si una tabla tiene un Indice determinado

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Cuando agregamos Indices a una tabla debemos averiguar si este ya tiene ese
índice, sino ocurrirá un error.







Select
Tabla




For
i = 1
To TagCount()

    If Tag(i)
=
"IndiceCampo"

       
Wait Window
"SI"

   
EndIf

EndFor







 



Por: David Amador T

Modificar la Ventana de VFP con un solo comando

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Sin necesidad de estar escribiendo varios comandos, podemos modificar el
aspecto de la ventana (Screen) de VFP



MODIFY WINDOW "screen"
TITLE
"La Web de VFP"
ZOOM icon file
"dav.ico"
zoom


 



Por: David Amador T

Suprimir cuadro de diálogo "Imprimiendo" con el API

Visual Fox Pro, Funciones API Comentarios ( 0 ) »
Cuando mandamos reportes a
la Impresora algunas veces queremos personalizar esta operación; pero
siempre nos muestras la ventanita "Imprimiendo". Esta es la
forma de omitir esa ventana




DECLARE INTEGER GetDesktopWindow IN WIN32API

DECLARE INTEGER LockWindowUpdate IN WIN32API INTEGER lnHandle




 



hWin = GetDeskTopWindow()




 



LockWindowUpdate(hWin) 
&& Bloquea actualización de la pantalla

       REPORT FORM NombreReporte.frx TO PRINTER

LockWindowUpdate(0)      && No
actualiza la pantalla


Por: David Amador T

Conocer la resolución actual de la pantalla en Windows

Visual Fox Pro, Funciones API Comentarios ( 0 ) »
Cuando mandamos reportes a
la Impresora algunas veces queremos personalizar esta operación; pero
siempre nos muestras la ventanita "Imprimiendo". Esta es la
forma de omitir esa ventana




#define SM_CXSCREEN 0          
&& Ancho de Screen en Píxeles 

#define SM_CYSCREEN 1          
&& Alto de Screen en Píxeles 



#define SM_CXFULLSCREEN 16 &&
Ancho área de cliente

#define SM_CYFULLSCREEN 17 && Alto área de cliente





DECLARE INTEGER GetSystemMetrics IN Win32API;

INTEGER nIndex



? GetSystemMetrics(SM_CXSCREEN)

? GetSystemMetrics(SM_CYSCREEN)

? GetSystemMetrics(SM_CXFULLSCREEN)

? GetSystemMetrics(SM_CYFULLSCREEN)



Por: David Amador T

Agregar un Month View desde código

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Algunas veces queremos incluir un calendario profesional dentro de nuestras
aplicaciones con el fin que el usuario seleccione una fecha y sin tener que
preocuparnos de validarla. Este truco resuelve el problema. El Month View lo
podemos agregar en cualquier parte del Form o del objeto, eso depende de las
propiedades Top y Left.


oForm =
Thisform


oForm.
AddObject("ctlMonth",
"oleControl",
"MSComCtl2.MonthView.2")

oForm.ctlMonth.
Top
= 2

oForm.ctlMonth.
Left
= 2

oForm.ctlMonth.
Visible
= .t.

oForm.
Show()




Por: David Amador T