* getting desktop path
loShell = CreateObject ('WScript.Shell')
lcDesktop = loShell.SpecialFolders('desktop')
* select file
lcXLS = Getfile('XLSx')
*lcXLS =[C:\xls\Daily.xlsx]
Set Textmerge To Memvar myVar Noshow
Set Textmerge On
\ DEFINE CLASS oleExcelObject as OLEControl
\ OleClass ="Excel.Sheet" && Server name
\ OleTypeAllowed = 0 && Linked
\ DocumentFile = "<<m.lcXLS>>" && This file should exist
\ ENDDEFINE
\ DEFINE CLASS cmdMyCmdBtn AS CommandButton
\ Caption = '\<Close'
\ Cancel = .T.
\ Left = 125
\ Top = 520
\ Height = 25
\ visible = .t.
\ PROCEDURE Click
\ this.visible=.f.
\ #INCLUDE gpImage.h
\ IF Not "gpImage" $ SET("Procedure")
\ SET PROCEDURE TO gpImage ADDITIVE
\ ENDIF
\ gdip = CREATEOBJECT("gpInit")
\ img = CREATEOBJECT("gpImage")
\ img.Capture(Thisform.HWnd)
\ LOCAL lnTitleHeight, lnLeftBorder, lnTopBorder
\ lnTitleHeight = SYSMETRIC(9)
\ lnLeftBorder = SYSMETRIC(3)
\ lnTopBorder = SYSMETRIC(4)
\ Img.Crop(lnLeftBorder, lnTitleHeight + lnTopBorder, ;
\ Img.ImageWidth - (lnLeftBorder * 2), ;
\ Img.ImageHeight - (lnTitleHeight + (lnTopBorder * 2)))
\ *Img.SaveasBMP("Dash")
\ Img.SaveasBMP(lcDesktop+'\'+"Dash")
\ Img = NULL
\ Gdip = NULL
\ release like _5
\ erase (m.lcTempClass)
\ clear events
\ release thisform
\ ENDDEFINE
\ DEFINE CLASS timer1 AS timer && timer
\ interval=5000
\ PROCEDURE timer
\ m.oForm.cmdMyCmdBtn.click
\ ENDDEFINE
Set Textmerge To
Set Textmerge Off
lcTempClass = FULLPATH(Sys(2015)+'.prg', SYS(2023)) && temp folder
Strtofile(myVar, lcTempClass)
Compile (lcTempClass)
Public oForm
oForm = Createobject("Form")
With oForm
.Height = 550
.Width = 360
.autocenter=.t.
.caption=[Dashboard]
.minbutton=.f.
.maxbutton=.f.
.alwaysontop=.t.
.Newobject("ExcelObject","oleExcelObject",lcTempClass) && Add OLE object
With .ExcelObject
.Left = 5
.Top = 5
.Width = .Parent.Width - 10
.Height = .Parent.Height - 10
.Visible = .T.
Endwith
.Newobject("commandbutton","cmdMyCmdBtn",lcTempClass) && Add command button
.Newobject("timer","timer1",lcTempClass) && Timer class
Endwith
oForm.Show
Read Events
Clear Class 'oleExcelObject'
*delete file (m.lcTempClass)
*Erase (Juststem(m.lcTempClass)+'.*')
*RELEASE memvar like *.prg
*Erase (Juststem(lcTempClass)+'*.*')
*Erase ('_5WM*.*')