📄 appmenu.mpr
字号:
CREATE VIEW qprview
* Select the main database
dbfstem = juststem(m.dbfname)
SELECT (dbfstem)
skipvar = .T.
gen_name = .F.
* Default query name is the database name with a QPR extension.
m.qname = addbs(qprpath) + forceext(justfname(m.dbfname),'QPR')
* If there are multiple databases in this app, create a query template
* so that the user doesn't have to enter all the relations again.
IF m.nextdbf > 2 AND TYPE("dbflist") <> "U"
* Create a blank query file to pass the databases and relations
* along to RQBE
* Try to come up with a reasonable-sounding unique name for the query,
* if the default name is already taken.
i = 0
DO WHILE FILE(m.qname) AND i < 100
m.qname = ALLTRIM(LEFT(juststem(m.qname),6)) + STR(i,2)
m.qname = CHRTRAN(m.qname,' ','0')
m.qname = forceext(m.qname,'QPR')
m.qname = addbs(m.qprpath) + m.qname
i = i + 1
ENDDO
* Prompt the user for the query name and allow changes.
* Change to the directory the user wants to use so that the
* PUTFILE directory defaults are right.
in_dir = SET('DEFAULT')+CURDIR()
SET DEFAULT TO &qprpath
m.qname = PUTFILE('Query name',m.qname,'QPR','OK')
SET DEFAULT TO &in_dir
IF EMPTY(m.qname) && user changed his mind.
skipvar = .F.
RETURN
ELSE
* Use this path for future queries
qprpath = justpath(m.qname)
ENDIF
* Create the query template file
SET TEXTMERGE TO &qname
SET TEXTMERGE ON
SET CONSOLE OFF
gen_name = .T. && note that this is a generated file
\SELECT * ;
\ FROM <<dbflist[1,m.cstemnum]>>
FOR i = 2 TO m.nextdbf - 1
\\, <<dbflist[i,m.cstemnum]>>
ENDFOR
\\ ;
\ WHERE ;
FOR i = 2 TO m.nextdbf - 1
IF i > 2
\ AND
ELSE
\
ENDIF
\\ <<dbflist[i,m.cfldnum]>> = <<dbflist[i,m.pfldnum]>> ;
ENDFOR
\INTO CURSOR FoxApp
\BROWSE NOMODIFY
SET CONSOLE ON
SET TEXTMERGE OFF
SET TEXTMERGE TO
ELSE
* Prompt the user for the query name
m.qname = PUTFILE('Query name',m.qname,'QPR','OK')
ENDIF
IF !EMPTY(m.qname)
win_name = WOUTPUT()
ACTIVATE SCREEN
IF FILE(m.qname)
MODIFY QUERY (m.qname)
ELSE
CREATE QUERY (m.qname)
ENDIF
CLEAR
IF !EMPTY(m.win_name)
ACTIVATE WINDOW (m.win_name)
ENDIF
ELSE
* Delete this file if it was a generated file and the
* user cancelled the query.
IF m.gen_name AND FILE(m.qname)
DELETE FILE m.qname
ENDIF
ENDIF
IF EMPTY(opendbf(m.dbfname))
m.dbfname = LOCFILE(m.dbfname,'DBF','Please locate the database')
ENDIF
skipvar = .F.
IF FILE('qprview.vue')
SET VIEW TO qprview
ENDIF
KEYBOARD CHR(27) && force screen refresh
* ***********************************************************
* * *
* * _0ZK0L3JUE ON SELECTION BAR 18 OF POPUP applic *
* * *
* * Procedure Origin: *
* * *
* * From Menu: APPMENU.MPR, Record: 43 *
* * Called By: ON SELECTION BAR 18 OF POPUP applic *
* * Prompt: Report... *
* * Snippet: 15 *
* * *
* ***********************************************************
*
PROCEDURE _0zk0l3jue
IF !regen
mname = 'prtopts.prg'
ELSE
mname = 'prtopts.spr'
ENDIF
DO (mname)
* ***********************************************************
* * *
* * _0ZK0L3JUL ON SELECTION BAR 1 OF POPUP utilities *
* * *
* * Procedure Origin: *
* * *
* * From Menu: APPMENU.MPR, Record: 46 *
* * Called By: ON SELECTION BAR 1 OF POPUP utilities *
* * Prompt: Refresh screen *
* * Snippet: 16 *
* * *
* ***********************************************************
*
PROCEDURE _0zk0l3jul
ACTIVATE WINDOW (win_name)
KEYBOARD CHR(27)
* ***********************************************************
* * *
* * _0ZK0L3JUN ON SELECTION BAR 2 OF POPUP utilities *
* * *
* * Procedure Origin: *
* * *
* * From Menu: APPMENU.MPR, Record: 47 *
* * Called By: ON SELECTION BAR 2 OF POPUP utilities *
* * Prompt: Construct index *
* * Snippet: 17 *
* * *
* ***********************************************************
*
PROCEDURE _0zk0l3jun
DO invert WITH ALIAS()
SET ORDER TO 1
GOTO TOP
_CUROBJ = 1
WAIT WINDOW "Reindexing completed" NOWAIT
SHOW GETS
* ***********************************************************
* * *
* * _0ZK0L3JUP ON SELECTION BAR 3 OF POPUP utilities *
* * *
* * Procedure Origin: *
* * *
* * From Menu: APPMENU.MPR, Record: 48 *
* * Called By: ON SELECTION BAR 3 OF POPUP utilities *
* * Prompt: Pack *
* * Snippet: 18 *
* * *
* ***********************************************************
*
PROCEDURE _0zk0l3jup
PACK && also reindexes the file
SET ORDER TO 1
GOTO TOP
IF RECCOUNT() = 0
APPEND BLANK
ENDIF
WAIT WINDOW "Pack completed" NOWAIT
KEYBOARD CHR(27) && causes screen refresh and restores browses
SHOW GETS
* ***********************************************************
* * *
* * _0ZK0L3JUV ON SELECTION BAR 1 OF POPUP enviro *
* * *
* * Procedure Origin: *
* * *
* * From Menu: APPMENU.MPR, Record: 51 *
* * Called By: ON SELECTION BAR 1 OF POPUP enviro *
* * Prompt: Status Bar *
* * Snippet: 19 *
* * *
* ***********************************************************
*
PROCEDURE _0zk0l3juv
STORE MRKBAR("ENVIRO",BAR()) TO m.markset
IF m.markset
SET STATUS OFF
SET MARK OF BAR BAR() OF enviro TO .F.
ELSE
SET STATUS ON
SET MARK OF BAR BAR() OF enviro TO .T.
ENDIF
RETURN
* ***********************************************************
* * *
* * _0ZK0L3JUW ON SELECTION BAR 2 OF POPUP enviro *
* * *
* * Procedure Origin: *
* * *
* * From Menu: APPMENU.MPR, Record: 52 *
* * Called By: ON SELECTION BAR 2 OF POPUP enviro *
* * Prompt: Clock *
* * Snippet: 20 *
* * *
* ***********************************************************
*
PROCEDURE _0zk0l3juw
STORE MRKBAR("ENVIRO",BAR()) TO m.markset
IF m.markset
SET CLOCK OFF
SET MARK OF BAR BAR() OF enviro TO .F.
ELSE
SET CLOCK ON
SET MARK OF BAR BAR() OF enviro TO .T.
ENDIF
RETURN
* ***********************************************************
* * *
* * _0ZK0L3JUY ON SELECTION BAR 3 OF POPUP enviro *
* * *
* * Procedure Origin: *
* * *
* * From Menu: APPMENU.MPR, Record: 53 *
* * Called By: ON SELECTION BAR 3 OF POPUP enviro *
* * Prompt: Extended video *
* * Snippet: 21 *
* * *
* ***********************************************************
*
PROCEDURE _0zk0l3juy
STORE MRKBAR("ENVIRO",BAR()) TO m.markset
IF m.markset
SET DISPLAY TO VGA25
SET MARK OF BAR BAR() OF enviro TO .F.
ELSE
SET DISPLAY TO VGA50
SET MARK OF BAR BAR() OF enviro TO .T.
ENDIF
KEYBOARD CHR(27)
RETURN
* ***********************************************************
* * *
* * _0ZK0L3JV0 ON SELECTION BAR 4 OF POPUP enviro *
* * *
* * Procedure Origin: *
* * *
* * From Menu: APPMENU.MPR, Record: 54 *
* * Called By: ON SELECTION BAR 4 OF POPUP enviro *
* * Prompt: Sticky *
* * Snippet: 22 *
* * *
* ***********************************************************
*
PROCEDURE _0zk0l3jv0
STORE MRKBAR("ENVIRO",BAR()) TO m.markset
IF m.markset
SET STICKY OFF
SET MARK OF BAR BAR() OF enviro TO .F.
ELSE
SET STICKY ON
SET MARK OF BAR BAR() OF enviro TO .T.
ENDIF
RETURN
* ***********************************************************
* * *
* * _0ZK0L3JV1 ON SELECTION BAR 5 OF POPUP enviro *
* * *
* * Procedure Origin: *
* * *
* * From Menu: APPMENU.MPR, Record: 55 *
* * Called By: ON SELECTION BAR 5 OF POPUP enviro *
* * Prompt: Shadow *
* * Snippet: 23 *
* * *
* ***********************************************************
*
PROCEDURE _0zk0l3jv1
STORE MRKBAR("ENVIRO",BAR()) TO m.markset
IF m.markset
SET SHADOW OFF
SET MARK OF BAR BAR() OF enviro TO .F.
ELSE
SET SHADOW ON
SET MARK OF BAR BAR() OF enviro TO .T.
ENDIF
RETURN
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -