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

Agregar imagen al Screen centrada

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Este es un
antiguo truco que te permite agregar una imagen al screen de VFP centrada.
Viejo pero bueno.


@
2.000,2.000 Say "c:imagen.jpg" Bitmap STYLE "T" Center


Por: David Amador T

Anclar barra del preview de los reportes

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Si deseas
que cuando hacer un report form la barra del preview se ancle puedes
utilizar este código.


Coloca el
siguiente código en el Init del Dataenvironment




If wexist("Print Preview") 
&& O WEXIST(_Vista Preliminar_) si
utilizas VFPXESN.DLL


     Move Window _Print Preview_ to 10,10

     Mouse Dblclick at 11,11

Endif


Por: David Amador T

Apagar rápidamente con WinXP

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Puedes hacer que tu PC se
apague con doble clic, para ello deberás crear un icono que te permita
hacer esta función, para realizar este truco sigue estos pasos:




Haz clic con el ratón derecho en una zona libre del Escritorio y luego
selecciona Nuevo y Acceso directo.

En la ventana del acceso directo debes escribir shutdown -s -t 00 y pulsa
el botón Siguiente, después le pones el nombre que quieras al acceso
directo y pinchas el botón Finalizar.

 


Si quieres dejar algo de
tiempo para cerrar las aplicaciones debes poner esto shutdown.exe -s -t 12
de esta forma dejarás un margen prudencial de 12 segundos para apagar el
PC.


Por: David Amador T

Conocer el nombre de los libros de un documento de Excel

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Cuando realizas
automatización con Excel y deseas manipular los libros de un documento
debes conocer el nombre de estos. Este truco te explica como hacerlo.


Primera
forma:


oExcel =
Createobject("Excel.Application")

oExcel.Workbooks.Open(GetFile("XLS"))



For Each oSheet In oExcel.Sheets

      ? oSheet.Name

Endfor



oExcel.ActiveWorkbook.Close()

oExcel.Quit()


Segunda forma


oExcel = Createobject("Excel.Application")

oExcel.Workbooks.Open(GetFile("XLS"))



For ln_Loop = 1 To oExcel.Sheets.Count

     oSheet = oExcel.Sheets[ln_Loop]

     ? oSheet.Name

EndFor



oExcel.ActiveWorkbook.Close()

oExcel.Quit()

 


Por: David Amador T

Base de datos a la que pertenece una tabla sin usar INDBC

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Esta es la forma de conocer
a que base de datos esta vinculada una tabla sin invocar la función INDBC().


Las tablas internamente
almacenan las características de estas, por ejemplo el
número de campos, el tipo de tabla, en fin. En este ejemplo vamos a
conocer la base de datos a la que esta vinculada la tabla seleccionada por
el usuario.


Local cArchivo, cBD



cArchivo=Fopen(Getfile("DBF"))



If cArchivo==-1 THEN

      
=Messagebox("El archivo se encuentra abierto ... acción no realizada")

Endif



=Fseek(cArchivo,32)

Do While !Feof(cArchivo)

     If Asc(Fread(cArchivo,1))==13
THEN

        
cBD=Fread(cArchivo,264)

        
Exit

     Endif

EndDo



=Fclose(cArchivo)

If Type("cBD")= "C" THEN

    =MessageBox(Trim(cBD))

Endif


Por: David Amador T

Buscar archivo dentro del proyecto actual

Visual Fox Pro, Trucos Comentarios ( 0 ) »

A través de este truco
podrás saber fácilmente si un archivo determinado existe dentro del
proyecto abierto actualmente.


En este
caso quiero buscar los archivos cuyo nombre contenga la palabra "descu".


FOR EACH o IN _VFP.ActiveProject.Files

    IF "descu"
$ o.name

         ?
o.name

    EndIf

NEXT



 


Por: David Amador T

Número de columnas y celdas usadas en documento de Excel

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Con este
código podrás conocer el número de celdas y columnas utilizadas por un
documento de Excel.


oE = CreateObject("Excel.Application")

oE.Workbooks.Open(Getfile("XLS"))



?oE.ActiveSheet.UsedRange.Rows.Count

?oE.ActiveSheet.UsedRange.Columns.Count



 


Por: David Amador T

Determinar si una propiedad existe en un objeto

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Existen
diversas formas de conocer si una propiedad existe en un objeto. Aquí te
muestra algunas formas.


Puedes
hacerlo con Type


If Type("Thisform.Text1.Value")
# "U"

    =Messagebox("La propiedad existe")

Else

    =Messagebox("La propiedad no existe en el objeto")

EndIf



Con Vartype



If VarType(Thisform.Text1.Value) # "U"

    =Messagebox("La propiedad existe")

Else

    =Messagebox("La propiedad no existe en el objeto")

EndIf


La diferencia entre TYPE y
VARTYPE es que en esta ultima el objeto a evaluar no se encierra entre
comillas y además de eso que Vartype realiza esta comprobación de forma
más veloz.


Con
PemStatus


If
PEMSTATUS(Thisform.Text1, "Value", 5)

    =Messagebox("La propiedad existe")

Else

    =Messagebox("La propiedad no existe en el objeto")

EndIf


Por: David Amador T

Número negativo entre paréntesis

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Cuando
realizamos algunos cálculos queremos colocar entre paréntesis aquellos que
sean negativos; puedes hacerlo de la siguiente forma.


Num = -1

Num =Iif(Num<0,"(" + Alltrim(Str(-Num,10,2))+")",Alltrim(Str(Num,10,2)))

? Num


Por: David Amador T

Grafico con MSChart

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Ejemplo básico de como generar gráficos con MSChart.



oForm =
Createobject("Grafico")

oForm.
Show(1)



Define Class
Grafico
As Form

   
Add Object
oChart
As OleControl
;

   
    WITH OleClass="MSChart20Lib.MSCHart.2",;

       
Top=0,
Left=0,;

       
Width=This.Width,
Height=This.Height



   
Procedure Init

       
Local
lnCounter



       
With This.oChart.Object

           
.RowCount = 12

           
.RowLabelCount = 1

           
.
Title.Text="Ejemplo
de Grafico"

           
.ColumnCount
= 1

           
.ChartType=1

           
.
Column
= 1

           
Rand(-1)



           
For
lnCounter =1
To
12

               
.
Row
= lnCounter

               
.RowLabel = 0 + lnCounter

               
.
Data
=
Rand()*100

           
EndFor

       
EndWith

   
EndProc

EndDefine

 


Por: David Amador T

Nombre de las base da datos existentes en SQL Server

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Excelente
truco que te devuelve el nombre de todas las base de datos que se
encuentran en el servidor de SQL Server utilizando SQLDMO.


oSQLSer =
CreateObject("SQLDMO.SQLServer")

oSQLSer.loginSecure = .T.

oSQLSer.Connect



For nNumBD = 1 to oSQLSer.Databases.Count

     oDatabse = oSQLSer.Databases(nNumBD)

     ? oDatabse.Name

Next

Por: David Amador T

Ejecutar un procedimiento almacenado de Oracle

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Esta pregunta es muy frecuente en los foros de VFP.


ORACLEDSN = Es el nombre del DSN de tu base de datos de Oracle

USUARIO = Nombre del usuario de la base de datos

PASSWORD = Password del usuario de la base de datos

**************************************



h=SQLConnect("ORACLEDSN","USUARIO","PASSWORD") && Conectarse



If h > 0

    =SQLExec(h,"{Call MIPROC}") && Ejecuta el procedimiento
almacena MIPROC

    =SQLDisconnect(h) && Termina la conexión a la base de datos

    Wait Window "Procedimiento ejecutado correctamente"

Else

    Wait Window "No fue posible realizar la conexión"

ENDIF


Por: David Amador T

Deshabilitar la barra de menús de VFP

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Con este
truco podrás deshabilitar la barra de menú de VFP y no estará como si un
formulario fuera modal.




SET SKIP OF MENU _MSYSMENU
.T.

Por: David Amador T

Propiedades de una tabla en el entorno de datos

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Una
pregunta bastante frecuente...... aquí tienes la forma de conocer las
propiedades de una tabla que se encuentre en el entorno de datos (Dataenvironment).




For Each oObj In
Thisform.DataEnvironment.Objects

If Lower(m.oObj.BaseClass) = "cursor"

Wait Window
Timeout 2 ;

"Name :"+m.oObj.Name+Chr(13)+;

"Alias :"+m.oObj.Alias+Chr(13)+;

"Database :"+m.oObj.Database+Chr(13)+;

"CursorSource :"+m.oObj.CursorSource

Endif

Endfor

Por: David Amador T

Grafico con MSChart

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Otro
ejemplo básico de como generar gráficos con MSChart.




oForm=Createobject(_form1_)

oForm.Show

Read Events



Define Class form1 As Form

      Top = 0

      Left = 0

      Height = 520

      Width = 790

      DoCreate = .T.

      Name = "Form1"



      Add Object mschart As OleControl With ;

      Top = 10, ;

      Left = 5, ;

      Height = 500, ;

      Width = 780, ;

      Name = "MsChart", ;

      OleClass = _MSChart20Lib.MsChart_



      Procedure Init

           Create Cursor
crsChart (myCaption c,myValue i)



           For ix =1 To 10

                
Insert Into crsChart Values (Sys(2015),Int(Rand()*1000))

           Endfor



          
Thisform.mschart.Editpaste

          
Thisform.mschart.ChartType = 1

      Endproc



   



    

Procedure QueryUnload

           Clear Events

     Endproc

Enddefine

Por: David Amador T