|
VFP ·R¥ÎªÌªÀ°Ï ¥»°Q½×°Ï¬° Visual Foxpro ·R¥ÎªÌ¸gÅç¥æ¬yªº¦a¤è, ½Ð¦h¦h§Q¥Î"·j´M"ªº¥\¯à, ¥ý¬d¬Ý¬Ý¦³µL«e¨Ò¥i´`, ¦pªGÁÙ¦³¤£À´ªº¦Aµo°Ý. ³¡¥÷¥DÃD¦³ªþ¥[ÀÉ®×, ¶·¥ýµù¥U¦¨¬°ªÀ°Ï©~¥Á¤~¥i¥H¤U¸ü.
|
¤W¤@½g¥DÃD :: ¤U¤@½g¥DÃD |
µoªí¤H |
¤º®e |
Ruey
µù¥U®É¶¡: 2003-03-12 ¤å³¹: 1698 ¨Ó¦Û: tunglo
²Ä 1 ¼Ó
|
µoªí©ó: ¬P´Á¤G ¤G¤ë 24, 2004 5:13 pm ¤å³¹¥DÃD: µ£¤ß¥¼ª{ªºVFP+SQL ½sµ{(Âà¶K) |
|
|
¨Ó·½:±ö¤l µ£¤ß¥¼ª{
http://www.meizibbs.3322.org/bbs/dispbbs.asp?boardID=24&ID=6039
VFP+SQL ½sµ{(1)-°ÊºA³Ð«Ø¼Æ¾Ú·½
µªÂФp¥i¤Î¤ä«ù¦oªººô¤Íªº´£°Ý¡C
ÁÂÁ¤j®a¹ï§Úªº«H¥ô©M¤ä«ù¡A§Ú¶}©l¾Ç²ßVFP+SQL Server½sµ{¤ñ¸û±ß¡A¤j¬ù¬OVFP6©MSQL Server 7.0 ¥X¨Ó«á¤~¶}©lªº¡C±q¾Ç²ß©M¹ê½î¤¤¨ú±o¤F¤@¨Ç¸gÅç¡C¦pªG¤j®a¦³¿³½ì¡A§Ú¥i¥H§â¤@¨Ç¤ß±o¤¶²Ðµ¹¤j®a¡C
§Ú±N§¹¾ã¤¶²ÐVFP+SQL Server C/Sµ²ºc½sµ{.¤£²M·¡ªºªB¤Í¥i¦V¤p¥i¤@¼Ë´£¥X°ÝÃD¡A§Ú¦pªGÀ´ªº¸Ü¡A¥i§@¸Ñµª¡C
1¡B¼Æ¾Ú·½ªº«Ø¥ß¤è¦¡
¦]¬°«Ø¥ß¼Æ¾Ú·½¬OVFP+SQL Server½sµ{ªº²Ä¤@¨B¡A©Ò¥Hn¥ýÁ¿¡C
¤@¯ëªì¦¸±µÄ²®É¡A³£¬O¤â¤u«Ø¥ßODBC¼Æ¾Ú·½¡A¦ý³o¼Ë°µ¦³¤@¨Ç¤£¤è«K¡A¯S§O¬O¤u§@¯¸¼Æ¶q¸û¦h©Î¤u§@¯¸¸û¤À´²¡A¤â¤u¤è¦¡´N¤ñ¸û³Â·Ð¤F¡C§An¨ì¨C¤@¥x¤u§@¯¸¤W¥h«Ø¥ßODBC¼Æ¾Ú·½¡C
¥Îµ{§Ç¦Û°Ê«Ø¥ßODBC¼Æ¾Ú·½ªºÀuÂI¦³¥H¤U´XÂI¡G
1¡B¥i¥H¤è«K¦a¥ÎIP¦a§}³X°ÝªA°È¾¹¡A¤£½×¬O¦b§½°ìºô¤ºÁÙ¬O¦b^¯Sºô¤W¡A¥unª¾¹DªA°È¾¹ªºIP¦a§}¡A´N¯à¥¿±`³X°ÝªA°È¾¹¡C(¹ê½îÃÒ©ú¡A³oºØ¤èªk¦bINTERNT¤W¥i¯à¶¶§Q³q¹L¥æ´«¾÷©M¸ô¥Ñ¾¹¡C)
2¡B¤£¥Î³Â·Ð¦a¦b¨C¥x¤u§@¯¸¥h³]©wODBC¡C
§Ú±N¦b«á±µ¹¥X¥Îµ{§Ç½Õ¥ÎAPI¨ç¼Æ¥h«Ø¥ßODBC¼Æ¾Ú·½¡C
µn¿ýªí³æªº¬É±
½Õ¥Î¤è¦¡¡G
§Ú¬O¦bµn¿ýªí³æªº¡u½T©w¡v«ö¶sªºClick¨Æ¥ó¤¤½Õ¥Î³oÓ¨ç¼Æªº
* ¥h±¼±±®æ
gcDSN=ALLTRIM(thisform.dsn) && §A¿é¤JªºªA°È¾¹IP¦a§}©ÎªA°È¾¹¦W
gcUID=ALLTRIM(thisform.uid) && ¥Î¤áµn¿ý¦W ¦p¡Gsa
gcPWD=ALLTRIM(thisform.pwd) && ¥Î¤á¤f¥O
«O¦s¥Î¤áªº¿é¤JªA°È¾¹IP©M¥Î¤á¦W¦a(VFPªí¤¤)
*IF NOT USED("cfg")
* USE \tmp\cfg.dbf IN 0
*ENDIF
*
SELECT cfg
replace cfg.DSN WITH thisform.dsn
replace cfg.UID WITH thisform.uid
* ³Ð«Ø¥Î¤á¦W¼Æ¾Ú·½
CreateDSN(gcDSN,gcSQLDatabase+"¼Æ¾Ú·½",gcDSN,gcSQLDatabase)
thisform.handle = SQLSTRINGCONNECT("DSN=&gcDSN;UID=&gcUID;PWD=&gcPWD;DATABASE=&gcSQLDatabase")
thisform.Release
Åܶq»¡©ú¡G(Åܶq¥þ¬O¥þ§½Åܶq¡AÅܶq¦W²Ä1Ó¦r¥Àªí¥Ü¥þ§½¡A²Ä2Ó¦r¥Àªí¥ÜÅܶqÃþ«¬¡A¦pcªí¥Ü¦r²Å«¬¡Anªí¥Ü¼ÆÈ«¬)
gcDSN-------¼Æ¾Ú·½¦W¡A¦pªG§A¿é¤Jªº¬OIP¡A´N¥i¯à¬O³o¼Ë¡v192.168.0.1¡u¡A¦pªG¬OªA°È¾¹¦W¥i¯à¬O³o¼Ë¡vpcsrv¡u
gcSQLDatabase----SQL Server ªº¨t²Î¼Æ¾Ú "master"©Î§A³Ð«Øªº¼Æ¾Ú®w
µn¿ýªí³æªº·½µ{§Ç¡G
http://vfp.sunyear.com.tw/download.php?id=302
¦bµn¿ýªí³ælogin.scxªºUnload¨Æ¥ó¤¤ªº¤º®e¬°¡G
* ¦pªGµn¿ý¥¢±Ñ thisform.handle<=0
RETURN thisform.handle
ª`·N¡GgnMaster¬O³s±µSQL Serverªº¨t²Î¼Æ¾Ú®wMasterªº³s±µ¥y¬`¡C
¦b¤J¤f¥Dµ{§Ç¤¤À³¿é¤J¤U¦C»y¥y¡A¥iÁקKODBC¹ï¸Ü®Øªº¥X²{¡G
SQLSETPROP(0,"DispLogin",3)
µn¿ýªí³æªºInit¨Æ¥ó¤º®e¡G
*±qVFPªícfg.dbf¤¤¨ú±o¤W¦¸¿é¤JªºIP¦a§}©M¥Î¤á¦W¡Aµ²ªG¦s¤J¥Î¤á¦Û©w¸qÄݩʤ¤
thisform.uid=cfg.uid
thisform.dsn=cfg.dsn
µn¿ýªí³æªºUnLoad¨Æ¥ó¡G
* ±Nµn¿ýµ²ªGªð¦^µ¹½Õ¥Îµn¿ýªí³æªº¥Dµ{§Ç main.prg
RETURN thisform.handle
* thisform.handle>0 µn¿ý¦¨¥\
* thisform.handle <0 µn¿ý¥¢±Ñ
*¦b¥Dµ{§Ç¤¤½Õ¥Îµn¿ýªí³æªº¤èªk
* Àˬd±b¸¹
************************************************************
Do Form gcFormsPath+"login.scx" To gnHandle &&
If gnHandle <= 0 &&¤f¥O¤£¥¿½T
Quit
Endif
************************************************************
µ{§Ç³Ð«Ø¼Æ¾Ú·½µ{§Çì½X¡G
¥N½X: | *****************************************************************************
* ¨ç¼Æ¦W¡GCreateDSN
* ¥\¯à¡G¥ÎAPI¨ç¼Æ¨Ó?#93;¸mODBC¼Æ¾Ú·½
* ½Õ¥Î¤è¦¡¡G=CreateDSN(c¼Æ¾Ú·½¦W,c¼Æ¾Ú·½´yz,cSQLªA°È¾¹¦W,cSQL¼Æ¾Ú®w¦W)
* ¨Ó·½¡G¡m½Í½ÍVFP©MSQL SERVER·f°t°µC/S¨t²Î¡n
* µù¡G³o¸Ì«Ø¥ßªº¬O¥Î¤á¼Æ¾Ú·½
*¤U±ªº¨Ò¤l¬O¥ÎAPI¨ç¼Æ¨Ó?#93;¸m©M§R°£ODBC¼Æ¾Ú·½¡C
*¨ç¼Æ¦W¦r¬O SQLConfigDataSource¡A¨ä¤¤²Ä¤G¶µ°Ñ¼Æ¬O¼Æ¦r(1-¼W?#91; 2-קï 3-§R°£)
Function CreateDSN
Parameters c¼Æ¾Ú·½¦W,c¼Æ¾Ú·½´yz,cSQLªA°È¾¹¦W,cSQL¼Æ¾Ú®w¦W
Declare Integer SQLConfigDataSource In odbccp32 Integer, Integer, String, String
lnWindowHandle=0
lcODBCDriver='SQL Server' && DRIVERÃþ«¬
*c¼Æ¾Ú·½¦W='ZXJ' && ¼Æ¾Ú·½¦W¦r
*c¼Æ¾Ú·½´yz='¤åÀɺ޲z¼Æ¾Ú·½' && ¼Æ¾Ú·½´yz
*cSQLªA°È¾¹¦W='ZXJ' && SQL SERVER¦W¦r
*cSQL¼Æ¾Ú®w¦W='¤åÀɺ޲z' && n³s±µªº¼Æ¾Ú®w¦W¦r
**¥ý¸Õ¹Ïקï¤w¦³ªºODBC¡A¦pªG¤£¦s¦b¡Aªð¦^0¡C
lreturn=SQLConfigDataSource(lnWindowHandle, 2, lcODBCDriver, ;
'DSN=' + c¼Æ¾Ú·½¦W + Chr(0) ;
+ 'Description=' + c¼Æ¾Ú·½´yz + Chr(0) ;
+ 'Server=' + cSQLªA°È¾¹¦W + Chr(0) ;
+ 'Database=' + cSQL¼Æ¾Ú®w¦W + Chr(0))
If lreturn=0 &&¤£¦s¦b
**²K?#91;·sªºODBC
lreturn=SQLConfigDataSource(lnWindowHandle, 1, lcODBCDriver, ;
'DSN=' + c¼Æ¾Ú·½¦W + Chr(0) ;
+ 'Description=' + c¼Æ¾Ú·½´yz + Chr(0) ;
+ 'Server=' + cSQLªA°È¾¹¦W + Chr(0) ;
+ 'Database=' + cSQL¼Æ¾Ú®w¦W + Chr(0))
If lreturn=0 &&¥¢±Ñ
Messagebox('²K?#91;ODBC¼Æ¾Ú·½¥¢±Ñ',0+16+0,'BUFFER')
Endif
Endif
Return
*****************************************************************************
Function DelDSN
Parameters c¼Æ¾Ú·½¦W,c¼Æ¾Ú·½´yz,cSQLªA°È¾¹¦W,cSQL¼Æ¾Ú®w¦W
* ¥\¯à¡G¥ÎAPI¨ç¼Æ¨Ó§R°£ODBC¼Æ¾Ú·½
* ½Õ¥Î¤è¦¡¡G=§R°£¼Æ¾Ú·½(c¼Æ¾Ú·½¦W,c¼Æ¾Ú·½´yz,cSQLªA°È¾¹¦W,cSQL¼Æ¾Ú®w¦W)
* ¨Ó·½¡G¡m½Í½ÍVFP©MSQL SERVER·f°t°µC/S¨t²Î¡n
* µù¡G³o¸Ì«Ø¥ßªº¬O¥Î¤á¼Æ¾Ú·½
**¥Î§¹«á¡A¥i¥H¦bªí³æDESTROY¨Æ¥ó¸Ì§R°£ODBC¡C ¦pªG¤£·Q«½Æ?#93;¸m°Ñ¼Æ¡A¥i¥H§â³o¨Ç°Ñ¼Æ?#91;¨ìªí³æ§@¬°ÄÝ©Ê¡C
Declare Integer SQLConfigDataSource In odbccp32 Integer, Integer, String, String
lnWindowHandle=0
lcODBCDriver='SQL Server'
*c¼Æ¾Ú·½¦W='SharedData'
*c¼Æ¾Ú·½´yz='Shared Data Source'
*cSQLªA°È¾¹¦W='DEVSQL'
*cSQL¼Æ¾Ú®w¦W='Shared'
**¥ýקï¡A©ÎªÌ¨ä¬O§_¦s¦b
lreturn=SQLConfigDataSource(lnWindowHandle, ;
2, lcODBCDriver, ;
'DSN=' + c¼Æ¾Ú·½¦W + Chr(0) ;
+ 'Description=' + c¼Æ¾Ú·½´yz + Chr(0) ;
+ 'Server=' + cSQLªA°È¾¹¦W + Chr(0) ;
+ 'Database=' + cSQL¼Æ¾Ú®w¦W + Chr(0))
If lreturn=1 &&ODBC¦s¦b¡A§R°£¥¦
lreturn=SQLConfigDataSource(lnWindowHandle, ;
3, lcODBCDriver, ;
'DSN=' + c¼Æ¾Ú·½¦W + Chr(0) ;
+ 'Description=' + c¼Æ¾Ú·½´yz + Chr(0) ;
+ 'Server=' + cSQLªA°È¾¹¦W + Chr(0) ;
+ 'Database=' + cSQL¼Æ¾Ú®w¦W + Chr(0))
If lreturn=0
Messagebox('§R°£ODBC·½¥¢±Ñ',0+16+0,'Buffer')
Endif'
Endif
**²M°£DLL
Clear Dlls
* End |
_________________ #############################
§Ö¼Ö¶ý«}¨t¦C©¯ºÖ¦v°t,³Ü¤Q¥þÂû´ö~ì¨Ó©¯ºÖ¨º»ò²³æ!!
¾Ç·|VFP¨Ï¥ÎªÌªÀ°Ïªº·j´M,Code¤~·|§ó¦³½ì~
#############################
Ruey ¦b ¬P´Á¥| ¤G¤ë 26, 2004 3:10 pm §@¤F²Ä 3 ¦¸×§ï |
|
¦^³»ºÝ |
|
|
Ruey
µù¥U®É¶¡: 2003-03-12 ¤å³¹: 1698 ¨Ó¦Û: tunglo
²Ä 2 ¼Ó
|
µoªí©ó: ¬P´Á¤G ¤G¤ë 24, 2004 5:19 pm ¤å³¹¥DÃD: |
|
|
VFP+SQL ½sµ{(2)-°ÊºA³Ð«Ø»·µ{µø¹Ï
¥ý¬Ý·½µ{§Ç
¥N½X: | LPARAMETERS cSQLDatabaseName,cConnectionName,cSQLTableName,cViewName,cKey,cCondition,cOrder
*cSQLDatabaseName «áºÝ¼Æ¾Ú®w¦W
* cConnectionName ³s±µ¦W
* cSQLTableName «áºÝªí¦W
* cViewName µø¹Ï¦W
* cKey ¥DÁä
* cCondition µø¹Ï±ø¥ó
* cOrder ±Æ§Ç
*LOCAL nConnectHandle &&¼Æ¾Ú®w³s±µ¥y¬`
LOCAL cFieldName &&¦r¬q¦W
***********************************************************************
* ¨ç¼Æ¦W¡GCreateView
* §@¥Î¡G* ³Ð«Ø»·µ{µø¹Ï¨ç¼Æ
* °Ñ¼Æ»¡©ú¡G
* cOrder---±Æ§Ç¤è¦¡
* nHandle---«ü©wªº¼Æ¾Ú®wªº³s±µ¥y¬`
* cSQLDatabaseName---SQL Server¼Æ¾Ú®w¦W
* cConnName---³s±µ¦W
* cSQLTableName---SQL Serverªí¦W
* cViewName---n³Ð«Øªº»·µ{µø¹Ï¦W
* cKey---¥DÁä
* cCondition---±ø¥ó
* ½Õ¥Î®æ¦¡:
* =CreateView('¼Æ¾Ú®w¦W','³s±µ¦W','«áºÝªí¦W','µø¹Ï¦W','¥DÁä¦W','±ø¥ó','±Æ§Ç')
* ²Ä¤@¨B¡B³Ð«Øµø¹Ï
* ¦pªG¬O±a±ø¥óªºµø¹Ï
IF NOT EMPTY(cCondition)
CREATE SQL VIEW &cViewName ;
CONNECTION &cConnectionName SHARE ;
AS SELECT * FROM &cSQLTableName WHERE &cCondition ;
ORDER BY &cOrder
ELSE && ¦pªG¬O¤£±a±ø¥óªºµø¹Ï
CREATE SQL VIEW &cViewName ;
CONNECTION &cConnectionName SHARE ;
AS SELECT * FROM &cSQLTableName ;
ORDER BY &cOrder
ENDIF
* ²Ä¤G¨B¡B³]¸mµø¹Ï¥i§ó·s
* 1).Tables ÄÝ©Ê
DBSETPROP('&cViewName','View','Tables','&cSQLTableName')
* 2).KeyField ÄÝ©Ê(±N¦r¬q"cKey"³]©w¦¨ÃöÁä¦rÄæ)
DBSETPROP('&cViewName..&cKey','Field','KeyField',.T.)
* 3.UpdateName ÄÝ©Ê
DBSETPROP('&cViewName..&cKey','Field','UpdateName','&cSQLTableName..&cKey')
* 4)Updatable ÄÝ©Ê(«ü©w¥i§ó·sªº¦r¬q)
* ¨ú±oSQL Serverªí¡ucSQLTableName¡vµ²ºc¡A¦s©ñ¦bªí¡uªíµ²ºc¡v¤¤
*nConnectHandle=SQLSTRINGCONNECT('DSN=&gcDSN;UID=&gcUID;PWD=&gcPWD;DATABASE=&cSQLDatabaseName')
* °Ñ¨£¡mVisual FoxPro 6.X ¤¤¤åª©µ{§Ç³]p¡np.431
* 11.12 ¨ú±o«áºÝ¦r¬qªº¬ÛÃö«H®§
cCursorName='C'+SYS(3)
N=SQLCOLUMNS(gnHandle,"&cSQLTableName","FOXPRO","&cCursorName")
* n=SQLCOLUMNS(nConnectHandle,"¤åÀÉ","FOXPRO","°òªíµ²ºc")
* n=0 SQLCOLUMNSÁÙ¦b°õ¦æ¤¤
* n=1 SQLCOLUMNS°õ¦æ¦¨¥\
* n=-1 µo¥Í³s±µ¼h¦¸¤Wªº¿ù»~
* n=-2 µo¥Í¨t²ÎÀô¹Ò¤Wªº¿ù»~
SELECT(cCursorName)
SCAN
cFieldName=ALLTRIM(&cCursorName..Field_name)
DBSETPROP('&cViewName..&cFieldName','Field','Updatable',.T.) && ¥i§ó·s
DO CASE
CASE Field_type='C' && ¦pªG¬OChar«¬¦r¬q,Àq»{ȬO''
DBSETPROP('&cViewName..&cFieldName','Field','Defaultvalue',' ') && Àq»{È
CASE &cCursorName..Field_type='N' && ¦pªG¬ONumber«¬¦r¬q,Àq»{ȬO0
DBSETPROP('&cViewName..&cFieldName','Field','Defaultvalue','0') && Àq»{È
CASE Field_type='T' && ¦pªG¬Osmalldatetime«¬¦r¬q,§ïÅܵø¹Ï¦r¬qÃþ«¬¦¨¤é´Á«¬
IF NOT cFieldName='§ó·s®É¶¡'
DBSETPROP('&cViewName..&cFieldName','Field','DataType','d')
ENDIF
CASE Field_type='I' && ¦pªG¬Oint«¬¦r¬q,
DBSETPROP('&cViewName..&cFieldName','Field','DataType','n(10,0)')
CASE Field_type='L' && ¦pªG¬Obit«¬¦r¬q,§ïÅܵø¹Ï¦r¬qÃþ«¬¬°Å޿諬
DBSETPROP('&cViewName..&cFieldName','Field','DataType','l')
DBSETPROP('&cViewName..&cFieldName','Field','Defaultvalue','.F.') && Àq»{È
CASE Field_type='M' AND ALLTRIM(cFieldName)='TIMESTAMP'&&
ENDCASE
ENDSCAN
USE IN (cCursorName)
* 5)¥´¶} SQL §ó·s¶}Ãö
DBSETPROP('&cViewName','View','SendUpdates',.T.)
* 6) ³]©w§ó·s½Ä¬ðªº¸Ñ¨M¤è¦¡(¥DÁä©M¤wקï¦r¬q)
DBSETPROP('&cViewName','View','WhereType',2)
DBSETPROP("&cViewName","View","ShareConnection",.T.) &&±Nµø¹Ï³]¸m¦¨¦@¨É³s±µ
* 7) §ó·sÃþ«¬,¥ý§R°£,«á´¡¤J
* DBSETPROP('&cViewName','View','UpdateType',2)
* Endfunc
*********************************************************************************** |
½Õ¥Î¤§«eÀ³¥ý³Ð«Ø¤@Ó¥»¦a¼Æ¾Ú®w©M³s±µ¡G
* ³Ð«Ø³s±µ
¥N½X: | ****************************************************
Create Connection ¸ê®Æ³s±µ ;
DATASOURCE '&gcDSN' ;
USERID '&gcUID' ;
PASSWORD '&gcPWD' ;
DATABASE &gcSQLDatabase
****************************************************
¨ä¤¤¡GgcDSN¬O¼Æ¾Ú·½¦WºÙ
¡@¡@¡@gcUID¡@¬O¥Î¤áµn¿ý¦W
gcPWD ¬O¥Î¤á¤f¥O
gcSQLDatabase ¬O«áºÝSQL¼Æ¾Ú®w(§A¦Û¤v³Ð«Øªº) |
¨Ò¦p¡G
* ³Ð«Øµø¹Ï "VIEW_µø¹ÏÄÝ©Ê" ¥Î¥H«O¦s©M³]¸m¨t²Î©Ò¥Îµø¹ÏªºÄÝ©Ê
createview(gcSQLDatabase,'¸ê®Æ³s±µ','µø¹ÏÄÝ©Ê','view_µø¹ÏÄÝ©Ê','ID',"",'µø¹ÏÄÝ©Ê.ID')
* «áºÝ¼Æ¾Ú®w¦W ³s±µ¦W «áºÝªí¦W µø¹Ï¦W ¥DÁä ±ø¥ó ±Æ§Ç _________________ #############################
§Ö¼Ö¶ý«}¨t¦C©¯ºÖ¦v°t,³Ü¤Q¥þÂû´ö~ì¨Ó©¯ºÖ¨º»ò²³æ!!
¾Ç·|VFP¨Ï¥ÎªÌªÀ°Ïªº·j´M,Code¤~·|§ó¦³½ì~
############################# |
|
¦^³»ºÝ |
|
|
Ruey
µù¥U®É¶¡: 2003-03-12 ¤å³¹: 1698 ¨Ó¦Û: tunglo
²Ä 3 ¼Ó
|
µoªí©ó: ¬P´Á¤G ¤G¤ë 24, 2004 5:22 pm ¤å³¹¥DÃD: |
|
|
VFP+SQL ½sµ{(3)-¥ÎVFP³Ð«ØSQL¼Æ¾Ú®w
¥N½X: | **********************************************
* Copyright (c) 2003,
* All rights reserved.
*
* ¤å¥ó¦WºÙ¡GCreateSQLDB
* ¤å¥ó¼ÐÃÑ¡G
* ºK n¡G³Ð«Ø«áºÝSQL Server ¥Î¤á¼Æ¾Ú®w
*
* ·í«eª©¥»¡G1.0
* §¹¦¨¤é´Á¡G2003.03
**********************************************
SET TALK OFF
*SET STEP ON
gcDSN='PCSRV'
gcUID='sa'
gcPWD='111'
gcSQLDatabase='¸ê®ÆºÞ²z'
* ?#93;©w¤£Åã¥Ü¥XODBCµn¿ý¹ï¸Ü®Ø
=SQLSETPROP(0,"DispLogin",3)
gnMaster =SQLSTRINGCONNECT("DSN=&gcDSN;UID=&gcUID;PWD=&gcPWD;DATABASE=master")
WAIT CLEAR
WAIT WINDOWS "¥¿¦b³Ð«Ø¼Æ¾Ú®w¡u" + gcSQLDatabase + "¡v¡A½ÐµyÔ..." NOWAIT NOCLEAR
llCreateResult=.F. && ³Ð«Ø¼Æ¾Ú®wgcSQLDatabaseµ²ªG
llDelResult=.T. && §R°£¼Æ¾Ú®wgcSQLDatabaseµ²ªG
* ?#125;©l¤¬°Ê¥æ©ö
=SQLSetProp(gnMaster,'Transactions',2)
* §PÂ_¥Î¤á¼Æ¾Ú®w¡ugcSQLDatabase¡v¼Æ¾Ú®w¦s¦b§_A¦pªG¦s¦b¡AgnHandle>0
gnHandle =SQLSTRINGCONNECT("DSN=&gcDSN;UID=&gcUID;PWD=&gcPWD;DATABASE=&gcSQLDatabase")
IF gnHandle> 0 &&ªí©ú"gcSQLDatabase"¼Æ¾Ú®w¤w¸g¦s¦b
=SQLDISCONNECT(gnHandle) &&¤ÁÂ_»P¼Æ¾Ú®w¡ugcSQLDatabase¡vªºÁpô¡A§_«h¤£¯à§R°£¡C
WAIT CLEAR
WAIT WINDOWS "¡u" + gcSQLDatabase+"¡v¼Æ¾Ú®w¤w¸g¦s¦b¡A¥¿¦b§R°£..." NOWAIT NOCLEAR
IF SQLEXEC(gnMaster,"DROP DATABASE &gcSQLDatabase") > 0 &&§R°£
WAIT CLEAR
WAIT WINDOWS "§R°£¡u" + gcSQLDatabase +"¡v®w¦¨¥\!" NOWAIT NOCLEAR
llDelResult=.T.
WAIT CLEAR
WAIT WINDOWS "Ä~Äò³Ð«Ø¼Æ¾Ú®w¡u" + gcSQLDatabase +"¡v..." NOWAIT NOCLEAR
ELSE
WAIT CLEAR
WAIT WINDOWS "§R°£¡u" + gcSQLDatabase +"¡v®w¥¢±Ñ!" NOWAIT NOCLEAR
llDelResult=.F.
ENDIF
ENDIF
IF llDelResult=.T.
IF SQLEXEC(gnMaster,"CREATE DATABASE &gcSQLDatabase") > 0 && ¹Á¸Õ¹ê»Ú§ó·s,¨Ã¥B¥H«á¼g¤J¬°·Ç
* µ²§ô¤¬°Ê¥æ©ö
SQLCOMMIT(gnMaster)
WAIT CLEAR
llCreateResult=.T. && ³Ð«Ø¦¨¥\¼Ð»x
??CHR(7)
MESSAGEBOX("³Ð«Ø¡u"+ gcSQLDatabase + "¡v®w¦¨¥\¡I«ö¥ô·NÁä°h¥X",0,"³Ð«Ø¼Æ¾Ú®w")
ELSE
* ¿ù»~³B²z
AERROR(la¿ù»~)
* ¦V«á«ì´_
SQLROLLBACK(gnMaster)
WAIT CLEAR
??CHR(7)
MESSAGEBOX("³Ð«Ø¡u"+ gcSQLDatabase + "¡v®w¥¢±Ñ¡I«ö¥ô·NÁä°h¥X",0,"³Ð«Ø¼Æ¾Ú®w")
llCreateResult=.F. && ³Ð«Ø¦¨¥\¼Ð»x
ENDIF
WAIT CLEAR
ENDIF
RETURN llCreateResult |
»¡©ú¡G
1¡B¥ýn»Pmaster¼Æ¾Ú®w«Ø¥ß³s±µ
gnMaster =SQLSTRINGCONNECT("DSN=&gcDSN;UID=&gcUID;PWD=&gcPWD;DATABASE=master")
2¡BµM«á³Ð«Ø¼Æ¾Ú®w
SQLEXEC(gnMaster,"CREATE DATABASE &gcSQLDatabase") _________________ #############################
§Ö¼Ö¶ý«}¨t¦C©¯ºÖ¦v°t,³Ü¤Q¥þÂû´ö~ì¨Ó©¯ºÖ¨º»ò²³æ!!
¾Ç·|VFP¨Ï¥ÎªÌªÀ°Ïªº·j´M,Code¤~·|§ó¦³½ì~
#############################
Ruey ¦b ¬P´Á¤G ¤G¤ë 24, 2004 5:25 pm §@¤F²Ä 1 ¦¸×§ï |
|
¦^³»ºÝ |
|
|
Ruey
µù¥U®É¶¡: 2003-03-12 ¤å³¹: 1698 ¨Ó¦Û: tunglo
²Ä 4 ¼Ó
|
µoªí©ó: ¬P´Á¤G ¤G¤ë 24, 2004 5:24 pm ¤å³¹¥DÃD: |
|
|
VFP+SQL ½sµ{(4)-¥ÎVFP³Ð«ØSQLªí
¥N½X: | **********************************************
* Copyright (c) 2003,¦¨³£¾å¶i³n¥ó¤u§@«Ç
* All rights reserved.
*
* ¤å¥ó¦WºÙ¡GCreateSQLTable
* ¤å¥ó¼ÐÃÑ¡G
* ºK n¡G³Ð«Ø«áºÝSQL Server ¥Î¤á¼Æ¾Úªí
*
* ·í«eª©¥»¡G1.0
* §¹¦¨¤é´Á¡G2003.03
**********************************************
gcDSN='192.168.0.80'
gcUID='sa'
gcPWD=''
gcSQLDatabase='¸ê®ÆºÞ²z'
=SQLSETPROP(0,"DispLogin",3)
gnHandle =SQLSTRINGCONNECT("DSN=&gcDSN;UID=&gcUID;PWD=&gcPWD;DATABASE=&gcSQLDatabase")
IF NOT USED("cfg")
USE c:\¸ê®ÆºÞ²z\tmp\cfg.dbf
ENDIF
SELECT cfg
IF cfg.codetable=.t. && ¥N½Xªí
SQLEXEC(gnHandle,"CREATE TABLE ¥N½Xªí (ID int not null IDENTITY (1,1) PRIMARY KEY)")
SQLEXEC(gnHandle,"ALTER TABLE ¥N½Xªí ADD Ãþ«¬ char (10) null")
SQLEXEC(gnHandle,"ALTER TABLE ¥N½Xªí ADD ¥N½X char (20) null")
SQLEXEC(gnHandle,"ALTER TABLE ¥N½Xªí ADD ¦WºÙ char (40) null")
ENDIF
IF cfg.colldata=.T. && ¸ê®Æ¦¬¶°
SQLEXEC(gnHandle,"CREATE TABLE ¸ê®Æ¦¬¶° (ID int not null IDENTITY (1,1) PRIMARY KEY)")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ±µ¦¬¤é´Á datetime null") && Àq»{È¡G¨t²Î¤é´Á
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD §Ç¸¹ Int null") && ¦Û°Ê
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ±µ¦¬¤H char (8) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD °e¥æ¤H char (8) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤å¥ó¸¹ char (30) null") && 쬰¡u¤å¥ó½s¸¹¡v
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¼Ð·Ç¥N¸¹ char (30) null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¼Ð·Ç¦WºÙ varchar (200) null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD Ķ¦W varchar (200) null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¹ê¬I¤é´Á smalldate null") && ·s¼W ¼Ð·Çªº¡u¹ê¬I¤é´Á¡v
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ½s»s³æ¦ì varchar (60) null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤å¥ó½s»s varchar (100) null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤åºØ char (10) null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¾÷ºc¥N¸¹ varchar (30) null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¼Ð·Ç¦~¥÷ int null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤º³¡½s¸¹ char (30) null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤å¥ó½s½X char (30) null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤å¥ó¦W char (200) null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤å¥óª¬ºA char (6) null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¸üÅé char (6) null") && ·s¼W
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤uµ{¥N¸¹ char (30) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤uµ{¦WºÙ varchar (80) null") &&
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ì¤å¸¹ text null") &&
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD Á`±b¸¹ Int null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ³]p¶¥¬q char (20) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ª©¦¸ char (2) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ÃD¥Ø varchar (200) null") &&
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ÃöÁäµü char (30) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ±K¯Å char (4) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ÂkÀÉ¥÷¼Æ Int null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¶¼Æ Int null") && 쬰¨C¥U¶¼Æ
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ©³¹Ï±i¼Æ Int null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD «OºÞ´Á char (4) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ³d¥ôªÌ varchar (80) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD §Î¦¨®É¶¡ char (22) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤J®w®É¶¡ smalldatetime null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤â½Z Int null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD Àò¼úµ¥¯Å char (4) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ³Æµù text null") &&쬰 char(60)
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¸ê®Æ®w§O char (10) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¹q¤l¤å¥ó¦W char (20) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¥þ®§ÂsÄý¯Å§O char (8) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ®Õ¹ï char (20) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¼f¬d char (14) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¼f©w char (14) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ÂkÀɳæ¦ì varchar (100) null") &&
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD קï char (1) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ɾ\¼ÐÃÑ char (20) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤å¥ó³Ñ¾l¥÷¼Æ Smallint (2) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ÂkÀɼлx int null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ÂkÀɥӽФH char (8) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ÂkÀɥӽЮɶ¡ smalldatetime null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ÂkÀɱµ¦¬¤H char (8) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ÂkÀɱµ¦¬®É¶¡ smalldatetime null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤J®w¼Ð»x char (1) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤J®w¥Ó½Ð¤H char (8) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤J®w¥Ó½Ð®É¶¡ smalldatetime null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤J®w±µ¦¬¤H char (8) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤J®w±µ¦¬®É¶¡ smalldatetime null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ±M·~¨t²Î char (44) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ©³¹Ï±i¼Æ Int null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¤À¥U¼Æ Int null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD §åã¤H char (8) null")
* ¼W¥[ªº¦r¬q
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ¸ê®ÆÃþ«¬ char (20) null")
SQLEXEC(gnHandle,"ALTER TABLE ¸ê®Æ¦¬¶° ADD ®É¶¡ÂW timestamp)")
ENDIF |
»¡©ú¡G
1¡B¬°¤°»òn¥Î¦h±ø«Ø¥ß¤@Óªí©O¡H
³o¬O¦]¬°³Ð«Ø«áºÝSQLªºªíªº©R¥O¬O¥]§t¦bSQLEXEC()¨ç¼Æ¤¤ªº¡A¦pªG§An«Ø¥ßªºªíªº¦r¬q¼Æ¦h¡A§Aªº©R¥Oªø«×«Ü®e©ö¶W¹L255Ó¦r²Åªº¨î¡A¥t¥~¡Aµ{§Ç¥iŪ¤]«Ü®t¡C
2¡B¬°¤°»òn«Ø¥ßID¦r¬q©O¡H
³o¬O¦]¬°ID¦r¬q¬O¤@Ó¯S®í¾ã«¬¦r¬q¡A¥¦§@¬°ÃöÁä¦r¡A¥Î¨Ó¸Ñ¨M§ó·s½Ä¬ðªº¡C¥¦ªºÈ¦Û°Ê¼W1¡A«K¤£·|«½Æ¡A¨Ò¦p¡A¬Y¦æªºID¡×100¡A¦pªG§R°£³o¦æ¡A«K¥Ã»·¤£·|¥X²{ID¡×100ªºÈ¤F¡C
3¡B¬°¤°»òn«Ø¥ß¡u®É¶¡ÂW¡v¡@Ãþ«¬¬O timestampªº¦r¬q¡A¦P¼Ë¤]¬O¥Î¨Ó¸Ñ¨M¼Æ¾Ú§ó·sªº¡A·í¤@Óªíªº¦r¬q¸û¦h®É¡A¦pªG¼W¥[³oÓ¦r¬q¡A§ó·s³t«×¸û§Ö¡A¦]¬°SQL Server ¥u¬Ý³oÓ¦r¬qªº¤º®eÅܨS¦³¡A¦pªGÅܤF¡A»¡©ú§A§ó§ï¤F¼Æ¾Ú¡C¤Ï¤§¨S¦³§ó§ï¡C
³oÓ¨âÓ¦r¬q³£¤£»Ýn§A¨ÓºÞ²z©MºûÅ@¡C§A¥uºÞ¦bªí¤¤¥[¤J³o¨âÓ¦r¬q´N¦æ¤F¡C _________________ #############################
§Ö¼Ö¶ý«}¨t¦C©¯ºÖ¦v°t,³Ü¤Q¥þÂû´ö~ì¨Ó©¯ºÖ¨º»ò²³æ!!
¾Ç·|VFP¨Ï¥ÎªÌªÀ°Ïªº·j´M,Code¤~·|§ó¦³½ì~
############################# |
|
¦^³»ºÝ |
|
|
Ruey
µù¥U®É¶¡: 2003-03-12 ¤å³¹: 1698 ¨Ó¦Û: tunglo
²Ä 5 ¼Ó
|
µoªí©ó: ¬P´Á¤G ¤G¤ë 24, 2004 5:27 pm ¤å³¹¥DÃD: |
|
|
VFP+SQL ½sµ{(5)-¥ÎSPTºÞ²z±b¸¹
1¡B²K¥[¤@Ó±b¸¹
gcDSN='PCSRV' && pcsrv¬O§Úªº¥D¾÷¦W
gcUID='sa'
gcPWD='111'
gcSQLDatabase='¸ê®ÆºÞ²z'
*¡@³]©w¤£Åã¥ÜODBCµn¿ý¹ï¸Ü®Ø
=SQLSETPROP(0,"DispLogin",3)
* «Ø¥ß»P¼Æ¾Ú®wmasterªº³s±µ
gnMaster =SQLSTRINGCONNECT("DSN=&gcDSN;UID=&gcUID;PWD=&gcPWD;DATABASE=master")
cNewLoginID='zxj'
²K¥[¤@Óµn¿ý¦W(¦bSQL Server¤W)'zxj'
n1=SQLEXEC(gnMaster,"sp_addlogin '&cNewLoginID'")
2¡B¦b§Aªº¼Æ¾Ú®w¤¤²K¥[¤@ӥΤázxj
«Ø¥ß»P§Aªº¼Æ¾Ú®wªº³s±µ
«Ø¥ß»P§Aªº¼Æ¾Ú®wªº³s±µ
ghandle = SQLSTRINGCONNECT("DSN=&gcDSN;UID=&gcUID;PWD=&gcPWD;DATABASE=&gcSQLDatabase")
²K¥[¤@Ózxj¥Î¤á(¦b§Aªº¼Æ¾Ú®w¤¤)
n2=SQLEXEC(gnHandle ,"sp_grantdbaccess '&cNewLoginID','&cNewLoginID'")
¦pªGn1>0 ©În2>0 ªí¥Ü«Ø¥ß¦¨¥\¡C¤Ï¤§¥¢±Ñ
3¡B§R°£¤@Ӽƾڮw¥Î¤á
n1=SQLEXEC(gnHandle ,"sp_revokedbaccess '&cLoginID'")
ª`·N¡G§A¾Þ§@ªº¬O«á¥xªºþӼƾڮw¡An¬Ý³s±µ¥y¬`¬O«ü¦VþӼƾڮwªº¡C³o¸Ìªº³s±µ¥y¬`¬O«ü¦V§Úªº¼Æ¾Ú®w¡u¸ê®ÆºÞ²z¡v
Åܶq·N¸q¦P1¼Ó¡C
4¡B§R°£¤@Óµn¿ý±b¸¹
n2=SQLEXEC(gnMaster ,"sp_droplogin '&cLoginID'")
µù¡GgnMaster ¬O«ü¦VMaster¼Æ¾Ú®wªº¡C
±N·s¼W¥[ªº¥Î¤á¥[¤J¨ìsecurityadmin¨¤¦â¤¤
n=SQLEXEC(gnMaster,"sp_addsrvrolemember '&cNewLoginID',securityadmin")
»¡©ú¡G¦pªG§A¤£§â·s¼Wªº¥Î¤á¥[¤J¨ìsecurityadmin¨¤¦â¤¤¡A·í§A¥Î·s¥Î¤áµn¿ý®É¡AµLÅv§ïÅܦۤvªº¤f¥O¡C _________________ #############################
§Ö¼Ö¶ý«}¨t¦C©¯ºÖ¦v°t,³Ü¤Q¥þÂû´ö~ì¨Ó©¯ºÖ¨º»ò²³æ!!
¾Ç·|VFP¨Ï¥ÎªÌªÀ°Ïªº·j´M,Code¤~·|§ó¦³½ì~
############################# |
|
¦^³»ºÝ |
|
|
Ruey
µù¥U®É¶¡: 2003-03-12 ¤å³¹: 1698 ¨Ó¦Û: tunglo
²Ä 6 ¼Ó
|
µoªí©ó: ¬P´Á¤G ¤G¤ë 24, 2004 5:29 pm ¤å³¹¥DÃD: |
|
|
VFP+SQL ½sµ{(6)-°O¿ýºûÅ@
°²³]§Aªº¥i§ó·sªº»·µ{µø¹Ï¬O¡uVIEW_¾Ç¥Í°ò¥»±¡ªp¡v
º¥ý°µ¤@Óªí³æ¡Aªí³æ¤W¦³¥|Ó«ö¶s¡G¡v²K¥[/«O¦s¡u¡B¡uקï/«°µ¡v¡B¡u§R°£¡v¡B¡u°h¥X¡v¦p¹Ï1©Ò¥Ü(°h¥X«ö¶s¬Ù¤F)
¦¹¥DÃD¬ÛÃö¹Ï¤ù¦p¤U¡G
¦p¹Ï1
¦bformªºLoad¨Æ¥ó¤¤¥´¶}§Aªº¥i§ó·sªº»·µ{µø¹Ï
* §PÂ_¥H«e¬O§_¥´¶}¹L
if not used(¡y¾Ç¥Í°ò¥»±¡ªp¡z)
use view_¾Ç¥Í°ò¥»±¡ªp alias ¾Ç¥Í°ò¥»±¡ªp in 0
endif
select ¾Ç¥Í°ò¥»±¡ªp
* ³]¸m¦¨ªí½w½Ä
CURSORSETPROP("Buffering",5)
²K¥[/«O¦s¤@Ó°O¿ý
"²K¥[«ö¶s"ªºClick¨Æ¥ó
IF THISFORM.mode=0 ¦pªG·í«e¬O¬d¸ß°O¿ýªºª¬ºA
* thisform.mode ¬O¤@Ó¦Û©w¸qÄÝ©Ê,¥Î¨Ó§PÂ_·í«eªºª¬ºA¬O0¡Ð¬d¸ß¡B1¡Ð²K¥[¡B2¡Ðקï°O¿ýªºª¬ºA¥Î
THISFORM.mode=1 && ªí¥Ü¶i¤J²K¥[°O¿ýªºª¬ºA
THISFORM.Recno = RECNO() && «O¦s·í«e°O¿ý¸¹¨ì¦Û©w¸qÄÝ©Êthisform.recno
APPEND BLANK
* §ó§ï«ö¶sªº¹Ï¤ù¡A¡u²K¥[«ö¶s¡vªº¹Ï¤ù¥Ñ²K¥[Åܦ¨¡u«O¦s¡v¡Aקï«ö¶sªº¹Ï¤ùÅܦ¨¡u«°µ¡v¡A¦p¹Ï2©Ò¥Ü
¦¹¥DÃD¬ÛÃö¹Ï¤ù¦p¤U¡G
¹Ï2
THISFORM.cmdNew.PICTURE=gcPicsPath+"wzsave.bmp"
THISFORM.cmdEdit.PICTURE=gcPicsPath+"wzundo.bmp"
ELSE && «O¦s°O¿ý
SELECT ¾Ç¥Í°ò¥»±¡ªp
TABLEUPDATE(1,.T.) && «O¦s
THISFORM.mode=0 && §ï¦^¬d¸ßª¬ºA
* §ó§ï«ö¶s¹Ï¤ù
THISFORM.cmdNew.PICTURE=gcPicsPath + 'wznew.bmp'
THISFORM.cmdEdit.PICTURE=gcPicsPath + 'wzedit.bmp'
ENDIF
* ¨ê·sªí³æ
THISFORM.REFRESH
»¡©ú¡G
gcPicsPath ¬O«ö¶s¹Ï¤ù¦s©ñ¸ô®|
thisform.mode ¬O¤@Ó¦Û©w¸qÄÝ©Ê,¥Î¨Ó§PÂ_·í«eªºª¬ºA¬O0¡Ð¬d¸ß¡B1¡Ð²K¥[¡B2¡Ðקï°O¿ýªºª¬ºA¥Î
"קï/«°µ"«ö¶sªºClick¨Æ¥ó
SELECT ¾Ç¥Í°ò¥»±¡ªp
* קï°O¿ý
IF THISFORM.mode=0 && ¦pªG¬O¬d¸ßª¬ºA
* ¦pªGµL°O¿ý¡A¤£¯àקï
IF RECCOUNT("¾Ç¥Í°ò¥»±¡ªp")=0
return
ENDIF
THISFORM.mode=2 && ªí¥Ü¶i¤Jק窱ºA
* §ó´«¬ÛÃöªº«ö¶s¹Ï¼Ð
THISFORM.cmdNew.PICTURE=gcPicsPath+"wzsave.bmp"
THISFORM.cmdEdit.PICTURE=gcPicsPath+"wzundo.bmp"
ELSE && «ì´_°O¿ý
SELECT ¾Ç¥Í°ò¥»±¡ªp
IF THISFORM.mode=2 && ק窱ºA
IF MESSAGEBOX('½T©wn©ñ±óקï¶Ü¡H',4+32+256,'©ñ±ó½T»{')=6
TABLEREVERT(.T.)
ENDIF
ELSE && ¦pªG¬O²K¥[°O¿ý®É©ñ±ó²K¥[°O¿ý
TABLEREVERT(.T.) && ¨ú®ø©Ò°µªº×§ï
ENDIF
* «ì´_¬ÛÃö«ö¶s¹Ï¼Ð
THISFORM.cmdNew.PICTURE=gcPicsPath+'wznew.bmp'
THISFORM.cmdEdit.PICTURE=gcPicsPath+'wzedit.bmp'
IF THISFORM.mode=1 &&¦pªG¬O²K¥[ª¬ºA
* «ì´_Àô¹Ò
IF THISFORM.RecNo>0 AND RECCOUNT()>=THISFORM.RecNo
GOTO THISFORM.Recno
ENDIF
ENDIF
THISFORM.mode=0 && ªí¥Ü¤w¦^¨ì¬d¸ßª¬ºA
ENDIF
THISFORM.REFRESH
³o¸Ì»¡©ú¬°¤°»òn¥Îªí³æ¦Û©w¸qÄÝ©Êthisform.mode©O¡H
¦pªG§A¦bªí³æªº¨CӼƾڽs¿è±±¥ó¦pTextBOX,EditBoxµ¥ªºRefresh()¤¤¿é¤J¤U¦C¥N½X¡G
IF thisform.mode = 0
this.ReadOnly = .T.
this.DisabledBackColor = gnBackColor
ELSE
this.ReadOnly = .F.
this.BackColor =16777215
ENDIF
¨º»ò¡A³o¨Ç±±¥ó¦b¬d¸ßª¬ºA´N¬O¥uŪªº¡A¤£¯àקï¼Æ¾Ú¡A§Ythis.ReadOnly = .T.¦Ó¦b²K¥[©Îק窱ºA®É¡A¥¦Ì·|¦Û°ÊÅܬ°¥i½s¿è¼Æ¾Úª¬ºA¡A§Ythis.ReadOnly = .F. _________________ #############################
§Ö¼Ö¶ý«}¨t¦C©¯ºÖ¦v°t,³Ü¤Q¥þÂû´ö~ì¨Ó©¯ºÖ¨º»ò²³æ!!
¾Ç·|VFP¨Ï¥ÎªÌªÀ°Ïªº·j´M,Code¤~·|§ó¦³½ì~
############################# |
|
¦^³»ºÝ |
|
|
Ruey
µù¥U®É¶¡: 2003-03-12 ¤å³¹: 1698 ¨Ó¦Û: tunglo
²Ä 7 ¼Ó
|
µoªí©ó: ¬P´Á¤G ¤G¤ë 24, 2004 5:32 pm ¤å³¹¥DÃD: |
|
|
VFP+SQL ½sµ{(6)-¥Dµ{§Ç½sµ{
³o¬Oµ¹ªì¾ÇªÌ±ÀÂˤ@ºØ®æ¦¡¡A¤£¤@©w³Ì¦n¡A¦ý¥¦«o¹ê¯à¥¿±`¹B¦æ
* µ{§Ç¦W¡Gmain.prg
* §@¥Î¡G¾ãÓ¨t²Îªº¤J¤f
* ¸ô®|¡G\§Aªºµ{§Ç¥Ø¿ý\prgs
¥N½X: |
Set Talk off
Set Escap off
* ¶}©l¡Aµ{§Ç¿ù»~³B²z
ON ERROR DO Err.PRG With Error(), Message(), Message(1), Program(), Lineno(1)
* ²Ä¤@¨B¡A²M²zÀô¹Ò*****************************
Close All && Ãö³¬©Ò¦³¤u§@°Ï¤¤¥´¶}ªº¼Æ¾Ú®w¡Bªí©M¯Á¤Þ¡A¨Ã¿ï¾Ü¤u§@°Ï 1¡C
Clear Menus && ±q¤º¦s¤¤ÄÀ©ñ©Ò¦³ªº¤º¦sÅܶq©M¼Æ²Õ¥H¤Î©Ò¦³¥Î¤á¦Û©w¸qµæ³æÄæ¡B
&& µæ³æ©Mµ¡¤fªº©w¸q¡C ÁÙ±q¤º¦s¤¤§R°£©Ò¦³¥Î DECLARE-ALL µù¥U
&& ªº¥~³¡ Windows 32 ¦ì°ÊºAÃì±µ®w (.DLLS)¡C
* Ãö³¬¨t²Îµæ³æ
* ¦pªG¦bµo¥X SET SYSMENU SAVE ©R¥O¤§«áקï¤Fµæ³æ¨t²Î¡A¥i¥H³q¹Lµo¥X
* SET SYSMENU TO DEFAULT ©R¥O¨Ó«ì´_«e±ªº³]¸m¡C
Set Sysmenu Save
* ¦bµ{§Ç°õ¦æ´Á¶¡¼o¤î Visual FoxPro ¥Dµæ³æÄæ¡C
Set Sysmenu Off
Set Sysmenu To
* ²Ä¤G¨B¡A³]¸mÀô¹Ò
* °h¥XRead®É«O¦s¼Æ¾Ú½w½Ä°Ï¤º®e
Set Autosave On
* ¨Ï¥Î INSERT¡BAPPEND ©M BROWSE ©R¥O³Ð«Ø·s°O¿ý®É¡A¤£±N·í«e°O¿ý¼Æ¾Ú½Æ»s¨ì·s°O¿ý¤¤¡C
Set Carry Off
* «ü©w¬O§_¥i¥H¥Î¦b¤å¥»®Ø¤¤Áä¤J³Ì«á¤@Ó¦r²Åªº¤èªk°h¥X¤å¥»®Ø¡C
Set Confirm Off
* ¤é´Á¤£Åã¥Ü¥@¬ö³¡¤À
Set Century Off
* ³]¸m¤é´Á®æ¦¡¬°"YY.MM.DD" ®æ¦¡
Set Date Ansi
* ¤£Åã¥Ü¤w¸g§R°£ªº°O¿ý
Set Delete On
* ¨M©w¯à§_¨Ï¥Î LOCK ( )©Î RLOCK ( ) Âê©w¦hÓ°O¿ý¡C
Set Multilocks On && ºôµ¸½sµ{±M¥Î
* ½T©w ATLTER TABLE¡BCREATE TABLE ©M INSERT - SQL ©R¥O¦p¦ó³B²z null È¡C
Set Null On
* «ü©w·í¦r¬q¬OªÅÈ(NUll)Åã¥Üªº¤å¥»¬°
Set NullDisplay To ''
* §ï¼g¤w¦³¤å¥ó¤§«e¤£Åã¥Ü¹ï¸Ü®Ø
Set Safety Off
* ²¾¥h¹Ï§Îª¬ºAÄæ¡C
Set Status Bar Off
* ²Ä¤T¨B¡A³]¸m§Aªºµ{§Ç¸ô®|
* ³]¸mµ{§Ç¥D¥Ø¿ý
Public gcMainPath
gcMainPath = Sys(5)+Sys(2003)+"\"
Set Default To &gcMainPath
* ¼Æ¾Ú¥Ø¿ý(¥»¦a¼Æ¾Ú®w©Mªí)
Public gcDataPath
gcDataPath =gcMainPath+"Data\"
* µ{§Ç¥Ø¿ý
Public gcPrgsPath
gcPrgsPath =gcMainPath+"Prgs\"
* ¹Ï¤ù¥Ø¿ý
Public gcPicsPath
gcPicsPath=gcMainPath + "pics\"
* ªí³æ¥Ø¿ý
Public gcFormsPath
gcFormsPath = gcMainPath+"forms\"
* µæ³æ¥Ø¿ý
Public gcMenusPath
gcMenusPath = gcMainPath+"menus\"
* ¼ÐÅҥؿý
Public gcLabelsPath
gcLabelsPath = gcMainPath+"labels\
* ³øªí¥Ø¿ý
Public gcReportsPath
gcReportsPath =gcMainPath+"Reports\"
* ²Ä¥|¨B ªì©l¤ÆÁä½L
Capslock(.F.)
IMEStatus(0)
Insmode(.T.)
Numlock(.T.)
* ²Ä¤¨B ¥´¶}¦Û©w¸qÃþ®w¡B¹Lµ{¤å¥ó
Set Classlib To gcMainPath+"vcx\MyVCX.vcx"
Set Procedure To gcPrgsPath +"Myproc.prg"
* ³]¸m¤£Åã¥ÜODBCµn¿ý¹ï¸Ü®Ø
SQLSETPROP(0,"DispLogin",3) && ºôµ¸±M¥Î
* ²Ä¤»¨B Án©ú¨ä¥L¥þ§½Åܶq
* ¼Æ¾Ú·½¦WºÙ
Public gcDSN
gcDSN = ¡y¡z
* ¥Î¤áµn¿ý¦W
Public gcUID
gcUID = ¡y¡z
* ¥Î¤áµn¿ý¤f¥O
Public gcPWD
gcPWD=¡y¡z
* ·í«eµn¿ý¥Î¤á©m¦W(¤¤¤å)
PUBLIC gcName
gcName=''
* «e«áºÝ¼Æ¾Ú®w¦W
Public gcSQLDatabase,gcFoxDatabase
gcSQLDatabase = ¡y¸ê®ÆºÞ²z¡z && «áºÝ SQL ¼Æ¾Ú®w
gcFoxDatabase = ¡y¸ê®ÆºÞ²z¡z && «eºÝ VFP¼Æ¾Ú®w
* ³s±µ¥y¬`
Public gnHandleMaster &&»P«áºÝ master ¨t²Î¼Æ¾Ú®wªº³s±µ¥y¬`
gnHandleMaster = 0
Public gnHandleUser && »P«áºÝ¥Î¤á¼Æ¾Ú®w¡ugcSQLDatabase ¡vªº³s±µ¥y¬`
gnHandleUser = 0
* ²Ä¤C¨B¡AÀˬdµn¿ý±b¸¹
* ½Õ¥Îµn¿ýªí³æ"login.scx"
Do Form gcFormsPath+"login.scx" To gnHandleUser
µ²ªG¦p¤U¹Ï©Ò¥Ü
* ¦pªGµn¿ý¦¨¥\ gnHandleUser > 0 ªí¥Üµn¿ý¦¨¥\¡A¤Ï¤§¡A¥¢±Ñ
If gnHandleUser <= 0 && µn¿ý¥¢±Ñ
Quit && °h¥X
Endif
* «ü©w·í¸Õ¹Ï°h¥XVFP®Én°õ¦æªºµ{§Ç
ON SHUTDOWN DO gcPrgsPath +"FileExit.prg" && ¥N½X¦p¤U¼Ó©Ò¥Ü¡C
* ²Ä¤K¨B¡A½Õ¥Îµ{§Ç¥Dµæ³æ
Do gcMenusPath+"mainmenu.mpr"
* ²Ä¤E¨B¡AÅã¥Üµ{§Ç«Ê±¡A®à±
Do Form gcFormsPath+"title.scx" && «Ê±
Do Form gcFormsPath+"Desktop.scx" && ®à±¡A¤]´N¬O§Aªºµ{§ÇI´º(¹Ï¤ù²¤)
* ²Ä¤Q¨B ¥´¶}©Î³Ð«Ø¥»¦a¼Æ¾Ú®w
cFoxDb=gcDataPath+ gcFoxDatabase + ".dbc"
If Not Files(cFoxDb) && ¦pªG«ü©wªº¼Æ¾Ú®w¤£¦s¦b
Create Database &cFoxDb && ³Ð«Ø¥¦
Endif
* ±Ò°Ê¨Æ¥ó³B²z
Read Events
* ±NÄÀ©ñ·í«eªº ON SHUTDOWN ©R¥O
ON SHUTDOWN |
----------- ¥þ------------------------------------
¸Óµ{§ÇÁÙ±N¤£Â_§¹µ½¡C
* µ{§Ç¡GFileExit
* §@¥Î¡G¸Ñ¨Mµ{§Ç¹B¦æ«á¡AÂIÀ»¥Dµ¡¤fÃö³¬«ö¶s[X]¤£¯à°h¥XVFPªº°ÝÃD
¥N½X: | If Messagebox('±z¯un°h¥X¥»¨t²Î¶Ü¡H',4+32+256,'°h¥X½T»{')<>6 AND gnHandleUser > 0
Return
Endif
*Do While Txnlevel()>0
* Rollback
*Enddo
Clear Events
ON SHUTDOWN
* «ì´_Àô¹Ò
Set Sysmenu To Default
With _Screen
.WindowState=2 &&³Ì¤j¤Æ
.BackColor=Rgb(255,255,255)
.Caption="Microsoft Visual FoxPro"
.Icon =''
Endwith
* Ãö³¬¼Æ¾Ú®w¤Îªí
If Used("cfg")
Use In cfg
Endif
If Used("dsn")
Use In dsn
Endif
If Used("uid")
Use In uid
Endif
Close Database All &&Ãö³¬©Ò¦³¼Æ¾Ú®w
Close All &&Ãö³¬¦UºØÃþ«¬ªº¤å¥ó¡A¦ý¤£Ãö³¬©R¥Oµ¡¤f¡B½Õ¸Õµ¡¤f¡BÀ°§U¡B¸òÂܵ¡¤f¡C
Clear Menus &&ÄÀ©ñ¤º¦s¤¤©Ò¦³ªºµæ³æ©w¸q¡C
Clear Popups &&ÄÀ©ñ¤º¦s¤¤©Ò¦³¥ÎDEFINE POPUP©R¥O³Ð«Øªºµæ³æ©w¸q¡C
Clear Windows &&ÄÀ©ñ¤º¦s¤¤©Ò¦³¥Î¤á¦Û©w¸qµ¡¤fªº©w¸q¡A¨Ã±qVFP¥Dµ¡¤f©Î¬¡°Êªº¥Î¤á¦Û©w¸qµ¡¤f¤¤²M°£µ¡¤f¡C
Clear &&²M«Ì
Set Safe On
_Screen.Picture=""
=SQLDISCONNECT(0)
Quit |
* µ{§Ç¡G¿ù»~³B²z¡A¥Ñ±ö¤l´£¨Ñ¡A¥¼ÅçÃÒ¡C
¥N½X: | *****************
err.prg
*****************
PARAMETER NERROR , CMESSAGE , CMESSAGE1 , CPROGRAM , NLINENO
SET TEXTMERGE DELIMITERS to
SET TEXTMERGE ON
SET TEXTMERGE TO ErrorLog.txt ADDITIVE NOSHOW
\---------------------------------------------------------------------
\<<DATE( )>> <<TIME( )>> ¿ù»~°O¿ý
\µ{§Ç¼ÐÃD: <<_Screen.Caption>>
\µ{§Ç¶}µoª©¥»: <<VERSION(1)>>
DO CASE
CASE _SCREEN.WINDOWSTATE = 0
\µ¡¤fª¬ºA: ´¶³q
CASE _SCREEN.WINDOWSTATE = 1
\µ¡¤fª¬ºA: ³Ì¤p¤Æ
CASE _SCREEN.WINDOWSTATE = 2
\µ¡¤fª¬ºA: ³Ì¤j¤Æ
ENDCASE
\µ¡¤f¥iµø: <<IIF(_Screen.Visible= .T. , "¥i¨£" , "¤£¥i¨£")>>
\µ¡¤f¶°¦X¼Æ: <<_Screen.FormCount>>
\ºôµ¸¾÷¾¹«H®§: <<SYS(0)>>
\°õ¦æµ{§Ç: <<JUSTFNAME(SYS(16,1))>>
\°õ¦æµ{§Ç©Ò¦b¥Ø¿ý: <<JUSTPATH(SYS(16,1))>>
\°õ¦æµ{§Ç©Ò¦b¥Ø¿ýºÏ½LªÅ¶¡: <<DISKSPACE(JUSTDRIVE(SYS(16,1)))>>
\Àq»{¥Ø¿ý: <<SYS(5)>><<SYS(2003)>>
\Àq»{¥Ø¿ýºÏ½LªÅ¶¡: <<DISKSPACE(SYS(5))>>
\¤å¥ó·j´M¸ô®|: <<SET("PATH")>>
\¨t²ÎÁ{®É¥Ø¿ý: <<SYS(2023)>>
\µêÀÀ¤º¦s¦À¤j¤p: <<SYS(1001)>>
\¥¿¦b¨Ï¥Îªº¤u§@°Ï: <<Alias()>>
\¬¡°Ê¦r¬q: <<VARREAD()>>
IF TYPE('_Screen.ActiveForm.Name') = 'C'
\¬¡°Êªí³æ: <<_Screen.ActiveForm.Name>>
\ªí³æ¼ÐÃD: <<_Screen.ActiveForm.Caption>>
\ªí³æ°òÃþ: <<_Screen.ActiveForm.BaseClass>>
\ªí³æ¬£¥Í: <<_Screen.ActiveForm.Class>>
\ªí³æ¬£¥Í®w: <<_Screen.ActiveForm.ClassLibrary>>
\ªí³æ¦ì¸m: <<SYS(1271, _Screen.ActiveForm)>>
ELSE
\µL¬¡°Êªí³æ
ENDIF
IF TYPE('_Screen.ActiveForm.ActiveControl') = 'O'
\¬¡°Ê±±¨î: <<_Screen.ActiveForm.ActiveControl.Name>>
IF TYPE('_Screen.ActiveForm.ActiveControl.Caption') = 'C'
\±±¨î¼ÐÃD: <<_Screen.ActiveForm.ActiveControl.Caption>>
ENDIF
\±±¥ó°òÃþ: <<_Screen.ActiveForm.ActiveControl.BaseClass>>
\±±¥ó¬£¥Í: <<_Screen.ActiveForm.ActiveControl.Class>>
\±±¥ó¬£¥Í®w: <<_Screen.ActiveForm.ActiveControl.ClassLibrary>>
\±±¥ó¦ì¸m: <<SYS(1271, _Screen.ActiveForm.ActiveControl)>>
ELSE
\µL¬¡°Ê±±¨î
ENDIF
\¿ù»~¥N¸¹: <<nError>>
\¿ù»~«H®§: <<cMessage>>
\²£¥Í¿ù»~ªº¦ì¸m: <<cProgram>>
\©Ò¦b¦æ¸¹: <<nLineno>>
\²£¥Í¿ù»~ªº¥N½X: <<cMessage1>>
\¿é¥X¤º¦s¨Ï¥Î±¡ªp -> MemoryLog.txt
\¿é¥X¤u§@Àô¹Ò¨ì -> StatusLog.txt
SET SAFETY OFF
DISPLAY MEMORY TO File MemoryLog.txt NOCONSOLE
DISPLAY STATUS TO File StatusLog.txt NOCONSOLE
\---------------------------------------------------------------------
SET TEXTMERGE TO
Nvalue = ;
MESSAGEBOX('µ{§Çµo¥Í¿ù»~¡I¸Ô²Ó«H®§¦p¤U¡G' + CHR(13) + CHR(13) + '¿ù»~¥N¸¹: ' + ;
LTRIM(STR(NERROR)) + ;
CHR(13) + ;
'¿ù»~¦æ¸¹: ' + ;
LTRIM(STR(NLINENO)) + ;
CHR(13) + ;
'¿ù»~«H®§: ' + ;
CMESSAGE + ;
CHR(13) + ;
'¿ù»~¥N½X: ' + ;
CMESSAGE1 + ;
CHR(13) + ;
'¿ù»~¦ì¸m: ' + ;
CPROGRAM + ;
CHR(13) + ;
CHR(13) + ;
'¸Ó¿ù»~¤w¸g°O¿ý¨ì¤å¥ó:Errorlog.txt,Memorylog.txt,Statuslog.txt¡C',50,'«H®§')
DO CASE
CASE Nvalue = 3
QUIT
CASE Nvalue = 4
RETRY
CASE Nvalue = 5
RETURN
ENDCASE |
_________________ #############################
§Ö¼Ö¶ý«}¨t¦C©¯ºÖ¦v°t,³Ü¤Q¥þÂû´ö~ì¨Ó©¯ºÖ¨º»ò²³æ!!
¾Ç·|VFP¨Ï¥ÎªÌªÀ°Ïªº·j´M,Code¤~·|§ó¦³½ì~
############################# |
|
¦^³»ºÝ |
|
|
µ£¤ß¥¼ª{
µù¥U®É¶¡: 2003-10-04 ¤å³¹: 3
²Ä 8 ¼Ó
|
|
¦^³»ºÝ |
|
|
bin1x
µù¥U®É¶¡: 2004-08-27 ¤å³¹: 462
²Ä 9 ¼Ó
|
µoªí©ó: ¬P´Á¤» ¤Q¤G¤ë 11, 2004 8:26 pm ¤å³¹¥DÃD: |
|
|
«z¶ë,¦nÅå¤Hªº¨ÑÄm |
|
¦^³»ºÝ |
|
|
rv2231
µù¥U®É¶¡: 2003-12-15 ¤å³¹: 1
²Ä 10 ¼Ó
|
µoªí©ó: ¬P´Á¤G ¤Q¤G¤ë 14, 2004 3:05 pm ¤å³¹¥DÃD: |
|
|
·½½X¯Ê myvcx.vcx
¥i§_»¡©ú¦¹Ãþ§Oµ{¦¡¤§¬ÛÃö¤º®e |
|
¦^³»ºÝ |
|
|
ERIC
µù¥U®É¶¡: 2006-11-27 ¤å³¹: 45
²Ä 11 ¼Ó
|
µoªí©ó: ¬P´Á¤ ¤T¤ë 09, 2007 9:36 pm ¤å³¹¥DÃD: |
|
|
n¼g¦¨
¥N½X: | * ½Õ¥Îµn¿ýªí³æ"login.scx"
Do Form gcFormsPath+"login.scx" To gnHandleUser
µ²ªG¦p¤U¹Ï©Ò¥Ü
* ¦pªGµn¿ý¦¨¥\ gnHandleUser > 0 ªí¥Üµn¿ý¦¨¥\¡A¤Ï¤§¡A¥¢±Ñ
If gnHandleUser <= 0 && µn¿ý¥¢±Ñ
Quit && °h¥X
Endif |
¤£¯à¼g¦¨
¥N½X: | * ½Õ¥Îµn¿ýªí³æ"login.scx"
Do Form gcFormsPath+"login.scx" To gnHandleUser
µ²ªG¦p¤U¹Ï©Ò¥Ü
* ¦pªGµn¿ý¦¨¥\ gnHandleUser > 0 ªí¥Üµn¿ý¦¨¥\¡A¤Ï¤§¡A¥¢±Ñ
If gnHandleUser > 0 && µn¿ý¥¢±Ñ
do Login.scx
Endif |
§_«h µ{¦¡ ·|¸õ¤£¥X _________________ ¾ÇµL¤î¹Ò¡I¤¬¬Û«jÀy§a¡ã
¦³»Ýn¾Ç²ßVFPªº·s¤â.¥i¥H§ä§Ú!! |
|
¦^³»ºÝ |
|
|
|
|
±z µLªk ¦b³oÓª©±µoªí¤å³¹ ±z µLªk ¦b³oÓª©±¦^ÂФ峹 ±z µLªk ¦b³oÓª©±½s¿è¤å³¹ ±z µLªk ¦b³oÓª©±§R°£¤å³¹ ±z µLªk ¦b³oÓª©±¶i¦æ§ë²¼ ±z µLªk ¦b³oÓª©±ªþ¥[ÀÉ®× ±z µLªk ¦b³oÓª©±¤U¸üÀÉ®×
|
Powered by phpBB © 2001, 2005 phpBB Group ¥¿Å餤¤å»y¨t¥Ñ phpbb-tw ºûÅ@»s§@
|