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

Asignar CursorSchema manualmente

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Cuando
utilizamos CursorAdapter e intentamos asignar la estructura de la tabla a
la propiedad CursorSchema y dicha estructura supera los 255 caracteres no
es posible hacerlo porque la ventana de propiedades solo

puede almacenar 255 caracteres en una propiedad.


Lo que
debes hacer es ir al evento INIT del cursoradapter y colocar la estructura
de la tabla de la siguiente forma


TEXT TO
THIS.CursorSchema NOSHOW

    Codigo C(8),
Apellidos C(30),
Nombres C(30),
Salario N(12,2)

ENDTEXT



 


Por: David Amador T

Próximo valor de un campo Autoincremental

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Quieres
conocer cual es próximo valor de un campo autoincremental de un tabla ?.


Para eso
debes utilizar la función AFIELDS, de la siguiente forma


Use
NombreTabla in 0

=AFIELDS(aListaCampos)

?aListaCampos (PosiciónDelCampo,
17)



Por: David Amador T

Ejemplo básico de Treeview

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Este es un ejemplo básico
de como crear un treeview agregarle nodos, expandirlo y darle formato a un
nodo especifico


#Define
tvwFirst 0

#Define tvwLast 1

#Define tvwNext 2

#Define tvwPrevious 3

#Define tvwChild 4



oForm = Createobject('myForm')

oForm.Caption = "Ejemplo de Treeview"

With oForm

      With .Tree

          .Left = 10

          .Top = 10

          .Width = 300

          .Height = 200

          .Nodes.Add(,tvwFirst,"root0",'Main
node 0')

          .Nodes.Add(,tvwFirst,"root1",'Main
node 1')

          .Nodes.Add(,tvwFirst,"root2",'Main
node 2')



         .Nodes.Add('root1',tvwChild,"child11",'Child11')

         .Nodes.Add('root1',tvwChild,"child12",'Child12')



         .Nodes.Add('root2',tvwChild,"child23",'Child23')



         .Nodes.Add('child11',tvwChild,"child113",'child113')

          With .Nodes.Add('child113',tvwPrevious,"child112",'child112')

              
.Bold=.T.

          Endwith

          With .Nodes.Add('child112',tvwPrevious,"child111",'child111')

              
.Bold = .T.

          Endwith



          With .Nodes.Add('child23',tvwPrevious,"child22",'Child22')

              
.Bold=.T.

          Endwith



          With .Nodes.Add('child22',tvwPrevious,"child21",'Child21')

              
.Bold=.T.

          Endwith



          For Each oNode In .Nodes

               
oNode.Expanded = .T.

          Endfor

      Endwith

.Show()

Endwith

Read Events





Define Class myForm As Form

         Add Object Tree As OleControl
With ;

         Name = 'Tree',OleClass='MSComCtlLib.TreeCtrl'



         Procedure Init

             
With This.Tree

                  
.linestyle = 1

                  
.Font.Name = 'Tahoma'

                  
.Font.Size = 10

                  
.indentation = 5

             Endwith

Endproc



Procedure QueryUnload

             Clear
Events

             Endproc

Enddefine

 


Por: David Amador T

Preview de un documento de Excel

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Aquí tienes un ejemplo de
como hacer un preview de un documento de excell a
través de automatización.


ObjExcel
= Createobject("Excel.Application")



With ObjExcel

       .DisplayAlerts = .F.

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

       .Visible=.T.

       .Activesheet.PrintPreview(.F.)

       .Visible=.F.

Endwith



=Messagebox("Presione OK para continuar")



ObjExcel.Quit

ObjExcel=.Null.

Release ObjExcel

 


Por: David Amador T

Determinar si ISS esta instalado

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Excelente truquito que te
permite determinar si Internet Information Server IIS esta instalado en tu
PC.


oIIS =
GetObject("IIS://localhost")

If Vartype(oIIS) = "O"

Wait window "Internet Information Server IIS esta instalado"

EndIf

 


Por: David Amador T

Suprimir ventana "Imprimiendo" en VFP 8

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Uno de las nuevas
características
incorporadas en VFP 8, si deseas puedes impedir que
se vea la ventana "Imprimiendo" que se muestra cuando ejecutas un reporte.


Report
Form NombreReporte To Printer Prompt NODIALOG Preview

 


Por: David Amador T

Ejecutar procedimiento almacenado de SQl Server con ADO

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Una pregunta muy frecuenta
.... aquí tienes dos formas de hacerlo utilizando ADO.


oCmd =
Createobject("ADODB.Command")

oRst = Createobject("ADODB.Recordset")



oCmd.ActiveConnection = "DSN=SQLServerX"

oCmd.CommandTimeout = 180

oCmd.CommandText = "{call SalesByCategory ('Condiments')}"



oRst.Open(oCmd)



Do While !oRst.Eof

      ? oRst.Fields("ProductName").Value + " Total
Compra" + ;

             
Transform(oRst.Fields("TotalPurchase").Value)

         oRst.MoveNext

Enddo


 


Otra forma


#Define
adCmdStoredProc 4



oCmd = Createobject("ADODB.Command")

oRst = Createobject("ADODB.Recordset")



oCmd.ActiveConnection = "DSN=SQLServerX"

oCmd.CommandTimeout = 180

oCmd.CommandText = "SalesByCategory ('Condiments')"

oCmd.CommandType = adCmdStoredProc



oRst.Open(oCmd.EXECUTE( ))



Do While !oRst.Eof

         ? oRst.Fields("ProductName").Value
+ " Total Compra" + ;

                   
Transform(oRst.Fields("TotalPurchase").Value)

            oRst.MoveNext

Enddo

 


Por: David Amador T

Comentarios en VFP

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Estamos acostumbrados a
utilizar el asterisco ( * ) o el & para comentariar líneas de código o
documentación en nuestras aplicaciones ..... aquí tienes otra forma de
hacerlo.




Note: esta es una
línea de comentario;



        
en VFP .....   ;




y lo utilizamos con
mucha frecuencia



Por: David Amador T

Iniciar el servidor de SQL MSDE

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Esta es una forma de
iniciar el servidor de SQL Server MSDE a través de SQLDMO.


oSvr =
CreateObject("SQLDMO.SQLServer")

oSvr.LoginTimeout = 60

oSvr.Start ( .T., "(local)", "sa", "")


Los
parámetros pasados al método START son:


.T. = Modo
de inicio.


(local) =
Servidor


sa = nombre
de usuario (sa es el usuario por defecto)


"" = clave
o password ("" es la clave por defecto para el usuario sa)



Por: David Amador T

Actualizar el escritrio de Windows (Win9x)

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Con este truquito podrás
actualizar el escritorio de Windows (Win9x) ...


oWSH =
CreateObject("WScript.Shell")

oWSH.Run ("C:\WINDOWS\RUNDLL.EXE user,RepaintScreen")


Por: David Amador T

Crear grafico de barras en el _Screen

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Excelente truco que te
permitirá crear gráficos en tus formularios .... no es la mejor forma pero
funciona muy bien.


_Screen.Cls

_Screen.CurrentX=100

_Screen.CurrentY=100

_Screen.FontName='Courier New'

_Screen.Print( 'Grafica '+Chr(13)+ ;

'Object Turnover Budget '+Chr(13)+ ;

'hulgi 123456 100000'+Chr(13)+ ;

'ekspo 1234 1000'+Chr(13)+ ;

'pood 123 100' )



For i=0 To 15

     _Screen.FillColor=Rgb(255*Rand(),255*Rand(),255*Rand())

     _Screen.FillStyle=i%8

     _Screen.Box(300+20*i,300,300+20*(i+1),300-300*Rand())

Endfor


Por: David Amador T

Ejemplo de StatusBar

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Ejemplo básico de como
crear y trabajar con un control StatusBar .... crear panels, establecer
estilos y textos en los paneles.




Public oBarra

Local lnPanels



oBarra = Createobject("Form")



With oBarra

.Caption = "Ejemplo de un Status Bar"

.Width = 430

.Height = 200

.Visible = .T.

.AddObject("OCXTest","StatusBarX", "MSComctlLib.sBarCtrl.2")

Endwith



With oBarra.OCXTest

.Panels(1).Text = "Ejemplo de Status
Bar"

.Panels(1).ToolTipText = "Panel 1"

.Panels(1).Style = 0

.Panels(1).Width = 300



.Panels.Add()



.Panels(2).ToolTipText = "Mayusculas
Siempre"

.Panels(2).Style = 1

.Panels(2).Width = 50



.Panels.Add()



.Panels(3).ToolTipText = "Bloque
numerico"

.Panels(3).Style = 2

.Panels(3).Width = 50

Endwith



Define Class StatusBarX As OleControl

Visible = .T.

Height = 25

Enddefine


Por: David Amador T

Ejemplo de StatusBar

Visual Fox Pro, Trucos Comentarios ( 0 ) »

Ejemplo básico de como
crear y trabajar con un control StatusBar .... crear panels, establecer
estilos y textos en los paneles.




Public oBarra

Local lnPanels



oBarra = Createobject("Form")



With oBarra

.Caption = "Ejemplo de un Status Bar"

.Width = 430

.Height = 200

.Visible = .T.

.AddObject("OCXTest","StatusBarX", "MSComctlLib.sBarCtrl.2")

Endwith



With oBarra.OCXTest

.Panels(1).Text = "Ejemplo de Status
Bar"

.Panels(1).ToolTipText = "Panel 1"

.Panels(1).Style = 0

.Panels(1).Width = 300



.Panels.Add()



.Panels(2).ToolTipText = "Mayusculas
Siempre"

.Panels(2).Style = 1

.Panels(2).Width = 50



.Panels.Add()



.Panels(3).ToolTipText = "Bloque
numerico"

.Panels(3).Style = 2

.Panels(3).Width = 50

Endwith



Define Class StatusBarX As OleControl

Visible = .T.

Height = 25

Enddefine


Por: David Amador T

Extraer información de los MP3

Visual Fox Pro, Trucos Comentarios ( 2 ) »

Quieres conocer la
información de los archivos MP3 ?? ... autor,
titulo, álbum, año ...




lnFile = Fopen(Getfile())



Fseek(lnFile, -128,2)

lcTag = Fread(lnFile, 128)



? "Titulo: ", Strtran(Substr(lcTag,4,30), Chr(0))

? "Artista: ", Strtran(Substr(lcTag,34,30), Chr(0))

? "Album: ", Strtran(Substr(lcTag,64,30), Chr(0))

? "Año: ", Val(Substr(lcTag,94,4))



Fclose(lnFile)



 


Por: David Amador T

Pasar parámetros a una programa con ShellExecute

Visual Fox Pro, Trucos Comentarios ( 0 ) »

En ocasiones quieres
ejecutar un programa con ShellExecute del API de Windows
y pasarle parámetros a dicho programa ... puedes hacer así:.




Declare Long ShellExecute In "shell32.dll" Long HWnd, String lpszOp, ;

string lpszFile, String lpszParams, ;

string lpszDir, Long nShowCmd



Declare Long GetDesktopWindow In"win32api"



Local hDCScreen



hDCScreen = GetDesktopWindow()



? ShellExecute( hDCScreen, "open", "miprograma.exe", "parm1 parm2 parm3",
"c:\", 1 )



 


Por: David Amador T