main.scx代码
PROCEDURE DOFORM
PARAMETERS useform
thisform.hide
do form &useform
thisform.show
PROCEDURE READINFO
wintype = .T.
serverinfo = GETENV("WINDIR")+"\dcstatus.txt"
IF NOT FILE(SERVERINFO)
gnerrfile = FCREATE(SERVERINFO)
IF GNERRFILE < 0
ELSE
= FCLOSE(GNERRFILE)
ENDIF
ENDIF
STORE FOPEN(SERVERINFO) TO gnfilehandle
STORE FSEEK(GNFILEHANDLE,0,2) TO gnend
STORE FSEEK(GNFILEHANDLE,0) TO gntop
toolflag = .F.
IF GNEND <= 0
mapdrive = SPACE(2)
sqlcomputer = SPACE(30)
wdatabase = SPACE(30)
sqluser = SPACE(30)
sqlpsw = SPACE(30)
toolflag = .T.
ELSE
rvar = FREAD(GNFILEHANDLE,GNEND)
uvar = ALLTRIM(UNLOCK_JM(RVAR))+","
ciu = 1
DO WHILE CIU <= 5
xpos = AT(",",UVAR)
DO CASE
CASE CIU = 1
mapdrive = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 2
sqlcomputer = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 3
wdatabase = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 4
sqluser = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 5
sqlpsw = SUBSTR(UVAR,1,XPOS-1)
ENDCASE
uvar = SUBSTR(UVAR,XPOS+1,999)
ciu = CIU+1
ENDDO
ENDIF
= FCLOSE(GNFILEHANDLE)
IF TOOLFLAG = .T.
= MESSAGEBOX("Tools Setup First........",16,"Message")
SET DEFAULT TO s:\
DO FORM tools
ELSE
ENDIF
IF TOOLFLAG = .T.
IF NOT FILE(SERVERINFO)
= MESSAGEBOX("TOOLS SET ERROR")
QUIT
ENDIF
STORE FOPEN(SERVERINFO) TO gnfilehandle
STORE FSEEK(GNFILEHANDLE,0,2) TO gnend
STORE FSEEK(GNFILEHANDLE,0) TO gntop
toolflag = .F.
IF GNEND <= 0
mapdrive = SPACE(2)
sqlcomputer = SPACE(30)
wdatabase = SPACE(30)
sqluser = SPACE(30)
sqlpsw = SPACE(30)
toolflag = .T.
ELSE
rvar = FREAD(GNFILEHANDLE,GNEND)
uvar = ALLTRIM(UNLOCK_JM(RVAR))+","
ciu = 1
DO WHILE CIU <= 5
xpos = AT(",",UVAR)
DO CASE
CASE CIU = 1
mapdrive = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 2
sqlcomputer = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 3
wdatabase = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 4
sqluser = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 5
sqlpsw = SUBSTR(UVAR,1,XPOS-1)
ENDCASE
uvar = SUBSTR(UVAR,XPOS+1,999)
ciu = CIU+1
ENDDO
ENDIF
= FCLOSE(GNFILEHANDLE)
IF TOOLFLAG = .T.
QUIT
ENDIF
ENDIF
recovery_path = DEFAULT_PATH
set defa to &default_path
DO defuser
WAIT WINDOW NOWAIT "WAIT FINDING ....."
这里是软件的数据库不宜公开
...............
,,,,,,,,,,,,,
,,,,,,,,,,,,,,
IF USECONNECTID <= 0
= resulterror("无法与后端连接,请确认 ODBC 设定无误。")
CANCEL
ELSE
= SQLSETPROP(USECONNECTID,"Transactions",2)
ENDIF
result = SQLEXEC(USECONNECTID,"select * from allfile","allfile")
SELECT allfile
INDEX ON ENG_NAME TAG allfile
SET ORDER TO 1
result = SQLEXEC(USECONNECTID,"select * from allfield","allfield")
SELECT allfield
INDEX ON DBFNAME+FIELDNAME TAG allfield1
INDEX ON DBFNAME TAG allfield2
SET ORDER TO 1
result = SQLEXEC(USECONNECTID,"select * from loadfile","loadfile")
SELECT loadfile
INDEX ON FILENAME TAG loadfile
result = SQLEXEC(USECONNECTID,"select * from dcsystem","dcsystem")
SELECT dcsystem
_dcname = DCSYSTEM.dcname
sysdec.decprice = DCSYSTEM.decprice
sysdec.dectprice = DCSYSTEM.dectprice
sysdec.decm2price = DCSYSTEM.decm2price
sysdec.decuweight = DCSYSTEM.decuweight
sysdec.dectweight = DCSYSTEM.dectweight
sysdec.decuarea = DCSYSTEM.decuarea
sysdec.dectarea = DCSYSTEM.dectarea
sysdec.decuaddlab = DCSYSTEM.decuaddlab
sysdec.dectaddlab = DCSYSTEM.dectaddlab
sysdec.decucost = DCSYSTEM.decucost
sysdec.dectcost = DCSYSTEM.dectcost
sysdec.specsize = DCSYSTEM.specsize
sysdec.autoordno = DCSYSTEM.auto_ordno
sysdec.cutshno = DCSYSTEM.cutshipno
sysdec.cutshlen = DCSYSTEM.cutshiplen
sysdec.lateday = DCSYSTEM.lateday
sysdec.publicpsw = DCSYSTEM.publicpsw
sysdec.checkmny = DCSYSTEM.checkmny
sysdec.multstax = DCSYSTEM.mult_stax
sysdec.otcost = DCSYSTEM.otcost
sysdec.autostock = DCSYSTEM.auto_stock
PUBLIC _fawhere, costflag, filterval
costflag = 1
filterval = ""
WAIT CLEAR
= closefile("dcsystem")
WAIT WINDOW NOWAIT "FINDING.."
result = SQLEXEC(USECONNECTID,"select * from paper","paper")
DO CASE
CASE RESULT < 0
= resulterror("无法取得资料")
CASE RECCOUNT("paper") = 0
sdd = CTOT(DTOC(DATE())+" 00:00:00")
edd = CTOT("2100/12/31 23:59:59")
result = SQLEXEC(USECONNECTID,"INSERT INTO paper (paper,wei,cost1,cost2,cost3,sdate,edate) VALUES ('*',0,0,0,0,?sdd,?edd)")
ENDCASE
result = SQLEXEC(USECONNECTID,"Set Rowcount 1")
result = SQLEXEC(USECONNECTID,"select * from sysuser","sysuser")
DO CASE
CASE RESULT < 0
= resulterror("无法取得使用者资料")
CASE RECCOUNT("sysuser") = 0
result = SQLEXEC(USECONNECTID,"INSERT INTO sysuser (user_no,user_name,sys_psw,pord_id,bord_id,mrt_id,docright) VALUES ('1234','sys','4321','9','9','9','Y')")
ENDCASE
IF RESULT < 0
= resulterror("无法起始开始设定..")
ELSE
companydata.companyname = "尚未设定公司资料"
result = SQLEXEC(USECONNECTID,"select * from company","company")
IF RESULT < 0
resulterror("无法取得公司资料")
ELSE
IF RECCOUNT("company") = 0
result = SQLEXEC(USECONNECTID,"INSERT INTO company (type,co_name) VALUES (1,' ')")
ENDIF
= SQLEXEC(USECONNECTID,"select * from company","company")
SELECT company
companydata.companyname = COMPANY.co_name
companydata.companytype = COMPANY.type
companydata.cntsdate = COMPANY.cntsdate
companydata.saletype = COMPANY.saletype
companydata.unicode = COMPANY.unicode
companydata.mrtclose = COMPANY.mrtclose
companydata.papclose = COMPANY.papclose
companydata.boxclose = COMPANY.boxclose
ENDIF
ENDIF
= closefile("sysuser")
= closefile("company")
= closefile("paper")
result = SQLEXEC(USECONNECTID,"set Rowcount 0")
result = SQLEXEC(USECONNECTID,"set Rowcount 0")
PROCEDURE ACTIVATE
ttables = AUSED(ALLTABLES)
IF TTABLES > 0
selalias = alltables(1,1)
select &selalias
SET RELATION TO
ENDIF
PROCEDURE DESTROY
usno = ALLTRIM(MAINUSER.user_no)
IF NOT EMPTY(USNO)
SET DEFAULT TO c:\
=delallpath('&usno')
ENDIF
SET PROCEDURE TO
= SQLDISCONNECT(0)
CLOSE DATABASES ALL
SET PROCEDURE TO
= SQLDISCONNECT(0)
CLEAR
_SCREEN.windowstate = 2
_SCREEN.caption = "Microsoft Visual Foxpro 5.0 Perfessional"
_SCREEN.closable = .T.
_SCREEN.movable = .T.
_SCREEN.minbutton = .T.
_SCREEN.maxbutton = .T.
_SCREEN.controlbox = .T.
_SCREEN.backcolor = RGB(255,255,255)
_SCREEN.picture = ""
RELEASE mainuser
SET HELP ON
SET ESCAPE ON
SET STATUS BAR ON
RELEASE ALL
PROCEDURE INIT
WAIT WINDOW NOWAIT "init Begin ....."
IF IS_NOTEBOOK = "Y"
ELSE
slkeyno = 1
slreadpw = CHR(hex("05"))+CHR(hex("23"))+CHR(hex("01"))+CHR(hex("07"))
readdata = ""
sldata = SPACE(105)
slflag = USBLANREADALL(SLKEYNO,@SLREADPW,@SLDATA)
IF TYPE("SLFlag") = "L"
= MESSAGEBOX("ERROR!ERROR-009 DLL ERROR",16,"ERROR")
QUIT
ENDIF
CLEAR
PUBLIC dcpr, limdate1, limpass1, limdate2, limpass2, limdate3, limpass3, limdate4, limpass4
PUBLIC limdate5, limpass5, limdate6, limpass6, limdate7, limpass7
PUBLIC dcve, dcsn
加密算法略
.......................
WAIT WINDOW NOWAIT "init path ....."
PUBLIC ttpath
ttpath = "c:\"
PUBLIC wtmon, wtarea, wtwei, wtlab, wname, wallname, wsale, wrate, wpri, wpaptype, wcuno, wboxname, wcustord, wcuspec
PUBLIC wunitarea, wunitwei, wunitlab, wunitcost, wareano, wcutypeno
PUBLIC worderqty, wsend, wspecno, wboxtype, wboxno, wplandate, wcustordno, wrealunit
PUBLIC nowpercent, wsendmon, wrealwei
STORE 0 TO nowpercent
WAIT CLEAR
PUBLIC symcode, useport
PUBLIC mdstatus
mdstatus = .T.
STORE 1 TO useport
STORE "00" TO symcode
PUBLIC _creditmsg, _creditmny
_creditmsg = ""
_creditmny = 0
PUBLIC titlewhat
STORE 1 TO titlewhat
PUBLIC mycomputer
mycomputer = SYS(0)
IF MDSTATUS = .T.
ELSE
ENDIF
IF MDSTATUS = .T.
ELSE
ENDIF
thisform.refresh
PUBLIC updcvalue
IF USBOKFLAG = .F.
updcvalue = "ERROR"
THISFORM.LOGINPANEL.loginno.value = UPDCVALUE
THISFORM.LOGINPANEL.loginno.enabled = .F.
THISFORM.LOGINPANEL.LOGINNO.valid()
THISFORM.LOGINPANEL.loginpassword.setfocus
ELSE
THISFORM.LOGINPANEL.loginno.enabled = .T.
THISFORM.LOGINPANEL.loginno.value = SPACE(7)
THISFORM.LOGINPANEL.loginname.value = ""
THISFORM.LOGINPANEL.loginpassword.value = ""
THISFORM.LOGINPANEL.loginno.setfocus
ENDIF
WAIT WINDOW NOWAIT "init ok ....."
PUBLIC testflag
testflag = .F.
PROCEDURE KEYPRESS
LPARAMETERS nkeycode,nshiftaltctrl
DO CASE
CASE NKEYCODE = 27 .AND. NSHIFTALTCTRL = 3
thisform.release
ENDCASE
PROCEDURE LOAD
DECLARE SHORT GetSystemDefaultLangID IN kernel32
DECLARE SHORT GetUserDefaultLangID IN kernel32
DECLARE SHORT GetSystemDefaultLCID IN kernel32
DECLARE SHORT GetUserDefaultLCID IN kernel32
DECLARE SHORT GetThreadLocale IN kernel32
DECLARE INTEGER GetOEMCP IN kernel32
DECLARE INTEGER GetACP IN kernel32
DECLARE INTEGER GetKBCodePage IN user32
SET PROCEDURE TO s:\source\sysfunc
SET PROCEDURE TO s:\source\api232 ADDITIVE
= int_dll()
= init_usbkey()
= jie_licence()
PUBLIC languageid
languageid = 1028
PUBLIC mapodbc, form_path, textchange
mapodbc = .F.
PUBLIC poapp
LOCAL lcpath,lcoldpath
SET DEFAULT TO s:\
CLOSE DATABASES ALL
= SQLDISCONNECT(0)
SET ESCAPE OFF
SET HELP OFF
SET NULL OFF
SET TALK OFF
SET DELETED ON
SET CONFIRM ON
SET DATE YMD
SET EXCLUSIVE OFF
SET MULTILOCKS ON
SET SYSMENU OFF
SET CENTURY ON
SET HOURS TO 24
SET STATUS BAR OFF
SET SAFETY OFF
SET FUNCTION 1 TO
SET FUNCTION 2 TO
SET FUNCTION 3 TO
SET FUNCTION 4 TO
SET FUNCTION 5 TO
SET FUNCTION 6 TO
SET FUNCTION 7 TO
SET FUNCTION 8 TO
SET FUNCTION 9 TO
SET FUNCTION 10 TO
SET FUNCTION 11 TO
SET FUNCTION 12 TO
this.left = 0
this.top = 0
this.autocenter = .T.
_SCREEN.windowstate = 2
default_path = SYS(2003)
default_path = SYS(2027,DEFAULT_PATH)
sys_temp = DEFAULT_PATH+"\temp"
sys_temp = SYS(2027,SYS_TEMP)
addprin = ""
temp_path = DEFAULT_PATH+"\temp"
dbf_path = SYS(2027,TEMP_PATH)
dbf_path = DEFAULT_PATH+"\dbf"
dbf_path = SYS(2027,DBF_PATH)
source_path = DEFAULT_PATH+"\source"
source_path = SYS(2027,SOURCE_PATH)
bmp_path = DEFAULT_PATH+"\bmp"
bmp_path = SYS(2027,BMP_PATH)
report_path = DEFAULT_PATH+"\report"
report_path = SYS(2027,REPORT_PATH)
vcx_path = DEFAULT_PATH+"\Vcx"
vcx_path = SYS(2027,VCX_PATH)
xls_path = DEFAULT_PATH+"\Xls"
xls_path = SYS(2027,XLS_PATH)
prod_path = DEFAULT_PATH+"\Prod"
prod_path = SYS(2027,PROD_PATH)
papdata_path = DEFAULT_PATH+"\Papdata"
papdata_path = SYS(2027,PAPDATA_PATH)
form_path = DEFAULT_PATH+"\form"
form_path = SYS(2027,FORM_PATH)
set path to &Dbf_Path;&temp_path;&report_path;&bmp_path;&Vcx_path;&source_path;&Xls_path;&link_path;&sys_temp
ON ERROR do errhand with error( ), message( ), message(1), program( ), lineno( )
PUBLIC mapdrive, sqlcomputer, wdatabase, sqluser, sqlpsw, useconnectid
PUBLIC yuseprinter, yusereport
yuseprinter = ""
yusereport = ""
thisform.readinfo
PUBLIC ttpath
ttpath = "c:\"
PUBLIC meditflag
meditflag = .F.
PUBLIC wtmon, wtarea, wtwei, wtlab, wname, wallname, wsale, wrate, wpri
PUBLIC wunitarea, wunitwei, wunitlab, wunitcost, wareano, wcutypeno
PUBLIC worderqty, wsend, wspecno, wboxtype, wboxno, wplandate, wcustordno, wrealunit
PUBLIC nowpercent, wsendmon
STORE 0 TO nowpercent
WAIT CLEAR
PUBLIC _creditmsg, _creditmny
_creditmsg = ""
_creditmny = 0
PUBLIC usbokflag, dcversion, keyno
usbokflag = .T.
dcversion = "2.1"
keyno = "dc300-X-0003"
PUBLIC yuenanflag
yuenanflag = .T.
PUBLIC fordc_visible
fordc_visible = .F.
RETURN .T.
WAIT WINDOW NOWAIT "Load Dll ....."
DECLARE SHORT GetSystemDefaultLangID IN kernel32
DECLARE SHORT GetUserDefaultLangID IN kernel32
DECLARE SHORT GetSystemDefaultLCID IN kernel32
DECLARE SHORT GetUserDefaultLCID IN kernel32
DECLARE SHORT GetThreadLocale IN kernel32
DECLARE INTEGER GetOEMCP IN kernel32
DECLARE INTEGER GetACP IN kernel32
DECLARE INTEGER GetKBCodePage IN user32
SET PROCEDURE TO s:\source\sysfunc
SET PROCEDURE TO s:\source\api232 ADDITIVE
ON ERROR do errhand with error( ), message( ), message(1), program( ), lineno( )
= int_dll()
= init_usbkey()
= jie_licence()
PUBLIC qprfile, qupldstatus, qupmsg, quperpno, qupdcno, qupir
PUBLIC mapdrive, dirshare, loginpsw, sqlserver, wdatabase, useconnectid
PUBLIC subrandval
subrandval = 0
IF NOT DIRECTORY("c:\Program_Files_dc")
MD c:\Program_Files_dc
ENDIF
IF NOT FILE("C:\Program_Files_dc\dcstatus.txt")
gnerrfile = FCREATE("C:\Program_Files_dc\dcstatus.txt")
IF GNERRFILE < 0
ELSE
= FCLOSE(GNERRFILE)
ENDIF
ENDIF
WAIT WINDOW NOWAIT "dcstatus ....."
STORE FOPEN("C:\Program_Files_dc\dcstatus.txt") TO gnfilehandle
STORE FSEEK(GNFILEHANDLE,0,2) TO gnend
STORE FSEEK(GNFILEHANDLE,0) TO gntop
toolflag = .F.
IF GNEND <= 0
mapdrive = SPACE(2)
dirshare = SPACE(80)
loginpsw = SPACE(30)
sqlserver = SPACE(30)
wdatabase = SPACE(30)
toolflag = .T.
ELSE
rvar = FREAD(GNFILEHANDLE,GNEND)
uvar = ALLTRIM(UNLOCK_JM(RVAR))+","
ciu = 1
DO WHILE CIU <= 5
xpos = AT(",",UVAR)
DO CASE
CASE CIU = 1
mapdrive = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 2
dirshare = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 3
loginpsw = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 4
sqlserver = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 5
wdatabase = SUBSTR(UVAR,1,XPOS-1)
ENDCASE
uvar = SUBSTR(UVAR,XPOS+1,999)
ciu = CIU+1
ENDDO
ENDIF
= FCLOSE(GNFILEHANDLE)
IF TOOLFLAG = .T.
= MESSAGEBOX("Tool Setup First........",16,"Message")
QUIT
ELSE
nretu = connecttonetwork(ALLTRIM(DIRSHARE),ALLTRIM(MAPDRIVE),WDATABASE,ALLTRIM(LOGINPSW))
IF NRETU = 0 .OR. NRETU = 85
ELSE
DO CASE
CASE NRETU = 5
erms = "没有使用网络资源的权利。"
CASE NRETU = 8
erms = "没有足够的内存来启动向导对话框。"
CASE NRETU = 66
erms = "设备类型与资源类型不匹配。"
CASE NRETU = 67
erms = "网络资源名称不合法或不存在。"
CASE NRETU = 86
erms = "指定的密码无效。"
CASE NRETU = 1200
erms = "本地驱动器名称无效。"
CASE NRETU = 1202
erms = "本地驱动器名称在用户配置文件中已经存在。"
CASE NRETU = 1203
erms = "网络部件没启动或指定名称不可用,操作不能执行。"
CASE NRETU = 1205
erms = "系统不能打开用户配置文件来处理永久性连接。"
CASE NRETU = 1206
erms = "用户配置文件格式不正确。"
CASE NRETU = 1208
erms = "发生了特定网络错误。"
CASE NRETU = 1222
erms = "网络不可用。"
CASE NRETU = 2250
erms = "不是一个重定向驱动器或系统当前没有连接到该驱动器。"
CASE NRETU = 2401
erms = "有打开的文件,不能断开。"
CASE NRETU = 2404
erms = "驱动器被一个活动进程使用并且不能断开连接。"
OTHERWISE
erms = ""
ENDCASE
= MESSAGEBOX("Map Drive Error"+ALLTRIM(ERMS))
QUIT
ENDIF
ENDIF
PUBLIC mapodbc, form_path, textchange
mapodbc = .F.
PUBLIC poapp
LOCAL lcpath,lcoldpath
SET DEFAULT TO s:\
WAIT WINDOW NOWAIT "Begin ....."
CLOSE DATABASES ALL
= SQLDISCONNECT(0)
SET ESCAPE OFF
SET HELP ON
SET NULL OFF
SET EXACT ON
SET TALK OFF
SET DELETED ON
SET CONFIRM ON
SET DATE YMD
SET EXCLUSIVE OFF
SET MULTILOCKS ON
SET SYSMENU OFF
SET CENTURY ON
SET HOURS TO 24
SET STATUS BAR OFF
SET SAFETY OFF
SET FUNCTION 1 TO
SET FUNCTION 2 TO
SET FUNCTION 3 TO
SET FUNCTION 4 TO
SET FUNCTION 5 TO
SET FUNCTION 6 TO
SET FUNCTION 7 TO
SET FUNCTION 8 TO
SET FUNCTION 9 TO
SET FUNCTION 10 TO
SET FUNCTION 11 TO
SET FUNCTION 12 TO
this.left = 0
this.top = 0
this.autocenter = .T.
_SCREEN.windowstate = 2
default_path = SYS(2003)
default_path = SYS(2027,DEFAULT_PATH)
sys_temp = DEFAULT_PATH+"\temp"
sys_temp = SYS(2027,SYS_TEMP)
addprin = ""
temp_path = DEFAULT_PATH+"\temp"
dbf_path = SYS(2027,TEMP_PATH)
dbf_path = DEFAULT_PATH+"\dbf"
dbf_path = SYS(2027,DBF_PATH)
source_path = DEFAULT_PATH+"\source"
source_path = SYS(2027,SOURCE_PATH)
bmp_path = DEFAULT_PATH+"\bmp"
bmp_path = SYS(2027,BMP_PATH)
report_path = DEFAULT_PATH+"\report"
report_path = SYS(2027,REPORT_PATH)
vcx_path = DEFAULT_PATH+"\Vcx"
vcx_path = SYS(2027,VCX_PATH)
xls_path = DEFAULT_PATH+"\Xls"
xls_path = SYS(2027,XLS_PATH)
prod_path = DEFAULT_PATH+"\Prod"
prod_path = SYS(2027,PROD_PATH)
papdata_path = DEFAULT_PATH+"\Papdata"
papdata_path = SYS(2027,PAPDATA_PATH)
form_path = DEFAULT_PATH+"\form"
form_path = SYS(2027,FORM_PATH)
set path to &Dbf_Path;&temp_path;&report_path;&bmp_path;&Vcx_path;&source_path;&Xls_path;&link_path;&sys_temp
recovery_path = DEFAULT_PATH
default_path = "c:\"
set defa to &default_path
WAIT WINDOW NOWAIT "defuser ....."
DO defuser
WAIT WINDOW NOWAIT "WAIT FINDING ....."
UseConnectId= sqlconnect('&sqlserver','sa','sa')
WAIT CLEAR
IF USECONNECTID <= 0
= resulterror("无法与后端连接,请确认 ODBC 设定无误。")
CANCEL
ELSE
= SQLSETPROP(USECONNECTID,"Transactions",2)
ENDIF
result = SQLEXEC(USECONNECTID,"select * from allfile","allfile")
SELECT allfile
INDEX ON ENG_NAME TAG allfile
SET ORDER TO 1
result = SQLEXEC(USECONNECTID,"select * from allfield","allfield")
SELECT allfield
INDEX ON DBFNAME+FIELDNAME TAG allfield1
INDEX ON DBFNAME TAG allfield2
SET ORDER TO 1
result = SQLEXEC(USECONNECTID,"select * from loadfile","loadfile")
SELECT loadfile
INDEX ON FILENAME TAG loadfile
WAIT WINDOW NOWAIT "Odbc Finish ....."
result = SQLEXEC(USECONNECTID,"select * from dcsystem","dcsystem")
SELECT dcsystem
_dcname = DCSYSTEM.dcname
sysdec.decprice = DCSYSTEM.decprice
sysdec.dectprice = DCSYSTEM.dectprice
sysdec.decm2price = DCSYSTEM.decm2price
sysdec.decuweight = DCSYSTEM.decuweight
sysdec.dectweight = DCSYSTEM.dectweight
sysdec.decuarea = DCSYSTEM.decuarea
sysdec.dectarea = DCSYSTEM.dectarea
sysdec.decuaddlab = DCSYSTEM.decuaddlab
sysdec.dectaddlab = DCSYSTEM.dectaddlab
sysdec.decucost = DCSYSTEM.decucost
sysdec.dectcost = DCSYSTEM.dectcost
sysdec.specsize = DCSYSTEM.specsize
sysdec.autoordno = DCSYSTEM.auto_ordno
sysdec.cutshno = DCSYSTEM.cutshipno
sysdec.cutshlen = DCSYSTEM.cutshiplen
sysdec.lateday = DCSYSTEM.lateday
sysdec.publicpsw = DCSYSTEM.publicpsw
sysdec.checkmny = DCSYSTEM.checkmny
sysdec.multstax = DCSYSTEM.mult_stax
sysdec.otcost = DCSYSTEM.otcost
sysdec.autostock = DCSYSTEM.auto_stock
WAIT CLEAR
= closefile("dcsystem")
WAIT WINDOW NOWAIT "FINDING.."
result = SQLEXEC(USECONNECTID,"select * from paper","paper")
DO CASE
CASE RESULT < 0
= resulterror("无法取得资料")
CASE RECCOUNT("paper") = 0
sdd = CTOT(DTOC(DATE())+" 00:00:00")
edd = CTOT("2100/12/31 23:59:59")
result = SQLEXEC(USECONNECTID,"INSERT INTO paper (paper,wei,cost1,cost2,cost3,sdate,edate) VALUES ('*',0,0,0,0,?sdd,?edd)")
ENDCASE
result = SQLEXEC(USECONNECTID,"Set Rowcount 1")
result = SQLEXEC(USECONNECTID,"select * from sysuser","sysuser")
DO CASE
CASE RESULT < 0
= resulterror("无法取得使用者资料")
CASE RECCOUNT("sysuser") = 0
result = SQLEXEC(USECONNECTID,"INSERT INTO sysuser (user_no,user_name,sys_psw,pord_id,bord_id,mrt_id,docright) VALUES ('1234','sys','4321','9','9','9','Y')")
ENDCASE
IF RESULT < 0
= resulterror("无法起始开始设定..")
ELSE
companydata.companyname = "尚未设定公司资料"
result = SQLEXEC(USECONNECTID,"select * from company","company")
IF RESULT < 0
resulterror("无法取得公司资料")
ELSE
IF RECCOUNT("company") = 0
result = SQLEXEC(USECONNECTID,"INSERT INTO company (type,co_name) VALUES (1,' ')")
ENDIF
= SQLEXEC(USECONNECTID,"select * from company","company")
companydata.companyname = COMPANY.co_name
companydata.coengname = COMPANY.engname
companydata.companytype = COMPANY.type
companydata.cntsdate = COMPANY.cntsdate
companydata.saletype = COMPANY.saletype
companydata.unicode = COMPANY.unicode
companydata.mrtclose = COMPANY.mrtclose
companydata.papclose = COMPANY.papclose
companydata.boxclose = COMPANY.boxclose
ENDIF
ENDIF
= closefile("sysuser")
= closefile("company")
= closefile("paper")
WAIT WINDOW NOWAIT "Basic ok ....."
result = SQLEXEC(USECONNECTID,"set Rowcount 0")
result = SQLEXEC(USECONNECTID,"set Rowcount 0")
PUBLIC ttpath
ttpath = "c:\"
PUBLIC meditflag
meditflag = .F.
PUBLIC wtmon, wtarea, wtwei, wtlab, wname, wallname, wsale, wrate, wpri
PUBLIC wunitarea, wunitwei, wunitlab, wunitcost, wareano, wcutypeno
PUBLIC worderqty, wsend, wspecno, wboxtype, wboxno, wplandate, wcustordno, wrealunit
PUBLIC nowpercent, wsendmon
STORE 0 TO nowpercent
WAIT CLEAR
PUBLIC _creditmsg, _creditmny
_creditmsg = ""
_creditmny = 0
PUBLIC usbokflag, dcversion, keyno
usbokflag = .T.
dcversion = "2.1"
keyno = "dc300-X-0003"
PUBLIC yuenanflag
yuenanflag = .T.
PUBLIC doexename
doexename = ""
WAIT WINDOW NOWAIT "Load OK ....."
PROCEDURE DOFORM
PARAMETERS useform
thisform.hide
do form &useform
thisform.show
PROCEDURE READINFO
wintype = .T.
serverinfo = GETENV("WINDIR")+"\dcstatus.txt"
IF NOT FILE(SERVERINFO)
gnerrfile = FCREATE(SERVERINFO)
IF GNERRFILE < 0
ELSE
= FCLOSE(GNERRFILE)
ENDIF
ENDIF
STORE FOPEN(SERVERINFO) TO gnfilehandle
STORE FSEEK(GNFILEHANDLE,0,2) TO gnend
STORE FSEEK(GNFILEHANDLE,0) TO gntop
toolflag = .F.
IF GNEND <= 0
mapdrive = SPACE(2)
sqlcomputer = SPACE(30)
wdatabase = SPACE(30)
sqluser = SPACE(30)
sqlpsw = SPACE(30)
toolflag = .T.
ELSE
rvar = FREAD(GNFILEHANDLE,GNEND)
uvar = ALLTRIM(UNLOCK_JM(RVAR))+","
ciu = 1
DO WHILE CIU <= 5
xpos = AT(",",UVAR)
DO CASE
CASE CIU = 1
mapdrive = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 2
sqlcomputer = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 3
wdatabase = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 4
sqluser = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 5
sqlpsw = SUBSTR(UVAR,1,XPOS-1)
ENDCASE
uvar = SUBSTR(UVAR,XPOS+1,999)
ciu = CIU+1
ENDDO
ENDIF
= FCLOSE(GNFILEHANDLE)
IF TOOLFLAG = .T.
= MESSAGEBOX("Tools Setup First........",16,"Message")
SET DEFAULT TO s:\
DO FORM tools
ELSE
ENDIF
IF TOOLFLAG = .T.
IF NOT FILE(SERVERINFO)
= MESSAGEBOX("TOOLS SET ERROR")
QUIT
ENDIF
STORE FOPEN(SERVERINFO) TO gnfilehandle
STORE FSEEK(GNFILEHANDLE,0,2) TO gnend
STORE FSEEK(GNFILEHANDLE,0) TO gntop
toolflag = .F.
IF GNEND <= 0
mapdrive = SPACE(2)
sqlcomputer = SPACE(30)
wdatabase = SPACE(30)
sqluser = SPACE(30)
sqlpsw = SPACE(30)
toolflag = .T.
ELSE
rvar = FREAD(GNFILEHANDLE,GNEND)
uvar = ALLTRIM(UNLOCK_JM(RVAR))+","
ciu = 1
DO WHILE CIU <= 5
xpos = AT(",",UVAR)
DO CASE
CASE CIU = 1
mapdrive = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 2
sqlcomputer = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 3
wdatabase = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 4
sqluser = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 5
sqlpsw = SUBSTR(UVAR,1,XPOS-1)
ENDCASE
uvar = SUBSTR(UVAR,XPOS+1,999)
ciu = CIU+1
ENDDO
ENDIF
= FCLOSE(GNFILEHANDLE)
IF TOOLFLAG = .T.
QUIT
ENDIF
ENDIF
recovery_path = DEFAULT_PATH
set defa to &default_path
DO defuser
WAIT WINDOW NOWAIT "WAIT FINDING ....."
ano = CEDODBC(1,"SQL Server",WDATABASE,"连ODBC",SQLCOMPUTER,WDATABASE)
useconnectid = SQLCONNECT(WDATABASE,SQLUSER,SQLPSW)
WAIT CLEAR
IF USECONNECTID <= 0
= resulterror("无法与后端连接,请确认 ODBC 设定无误。")
CANCEL
ELSE
= SQLSETPROP(USECONNECTID,"Transactions",2)
ENDIF
result = SQLEXEC(USECONNECTID,"select * from allfile","allfile")
SELECT allfile
INDEX ON ENG_NAME TAG allfile
SET ORDER TO 1
result = SQLEXEC(USECONNECTID,"select * from allfield","allfield")
SELECT allfield
INDEX ON DBFNAME+FIELDNAME TAG allfield1
INDEX ON DBFNAME TAG allfield2
SET ORDER TO 1
result = SQLEXEC(USECONNECTID,"select * from loadfile","loadfile")
SELECT loadfile
INDEX ON FILENAME TAG loadfile
result = SQLEXEC(USECONNECTID,"select * from dcsystem","dcsystem")
SELECT dcsystem
_dcname = DCSYSTEM.dcname
sysdec.decprice = DCSYSTEM.decprice
sysdec.dectprice = DCSYSTEM.dectprice
sysdec.decm2price = DCSYSTEM.decm2price
sysdec.decuweight = DCSYSTEM.decuweight
sysdec.dectweight = DCSYSTEM.dectweight
sysdec.decuarea = DCSYSTEM.decuarea
sysdec.dectarea = DCSYSTEM.dectarea
sysdec.decuaddlab = DCSYSTEM.decuaddlab
sysdec.dectaddlab = DCSYSTEM.dectaddlab
sysdec.decucost = DCSYSTEM.decucost
sysdec.dectcost = DCSYSTEM.dectcost
sysdec.specsize = DCSYSTEM.specsize
sysdec.autoordno = DCSYSTEM.auto_ordno
sysdec.cutshno = DCSYSTEM.cutshipno
sysdec.cutshlen = DCSYSTEM.cutshiplen
sysdec.lateday = DCSYSTEM.lateday
sysdec.publicpsw = DCSYSTEM.publicpsw
sysdec.checkmny = DCSYSTEM.checkmny
sysdec.multstax = DCSYSTEM.mult_stax
sysdec.otcost = DCSYSTEM.otcost
sysdec.autostock = DCSYSTEM.auto_stock
PUBLIC _fawhere, costflag, filterval
costflag = 1
filterval = ""
WAIT CLEAR
= closefile("dcsystem")
WAIT WINDOW NOWAIT "FINDING.."
result = SQLEXEC(USECONNECTID,"select * from paper","paper")
DO CASE
CASE RESULT < 0
= resulterror("无法取得资料")
CASE RECCOUNT("paper") = 0
sdd = CTOT(DTOC(DATE())+" 00:00:00")
edd = CTOT("2100/12/31 23:59:59")
result = SQLEXEC(USECONNECTID,"INSERT INTO paper (paper,wei,cost1,cost2,cost3,sdate,edate) VALUES ('*',0,0,0,0,?sdd,?edd)")
ENDCASE
result = SQLEXEC(USECONNECTID,"Set Rowcount 1")
result = SQLEXEC(USECONNECTID,"select * from sysuser","sysuser")
DO CASE
CASE RESULT < 0
= resulterror("无法取得使用者资料")
CASE RECCOUNT("sysuser") = 0
result = SQLEXEC(USECONNECTID,"INSERT INTO sysuser (user_no,user_name,sys_psw,pord_id,bord_id,mrt_id,docright) VALUES ('1234','sys','4321','9','9','9','Y')")
ENDCASE
IF RESULT < 0
= resulterror("无法起始开始设定..")
ELSE
companydata.companyname = "尚未设定公司资料"
result = SQLEXEC(USECONNECTID,"select * from company","company")
IF RESULT < 0
resulterror("无法取得公司资料")
ELSE
IF RECCOUNT("company") = 0
result = SQLEXEC(USECONNECTID,"INSERT INTO company (type,co_name) VALUES (1,' ')")
ENDIF
= SQLEXEC(USECONNECTID,"select * from company","company")
SELECT company
companydata.companyname = COMPANY.co_name
companydata.companytype = COMPANY.type
companydata.cntsdate = COMPANY.cntsdate
companydata.saletype = COMPANY.saletype
companydata.unicode = COMPANY.unicode
companydata.mrtclose = COMPANY.mrtclose
companydata.papclose = COMPANY.papclose
companydata.boxclose = COMPANY.boxclose
ENDIF
ENDIF
= closefile("sysuser")
= closefile("company")
= closefile("paper")
result = SQLEXEC(USECONNECTID,"set Rowcount 0")
result = SQLEXEC(USECONNECTID,"set Rowcount 0")
PROCEDURE ACTIVATE
ttables = AUSED(ALLTABLES)
IF TTABLES > 0
selalias = alltables(1,1)
select &selalias
SET RELATION TO
ENDIF
PROCEDURE DESTROY
usno = ALLTRIM(MAINUSER.user_no)
IF NOT EMPTY(USNO)
SET DEFAULT TO c:\
=delallpath('&usno')
ENDIF
SET PROCEDURE TO
= SQLDISCONNECT(0)
CLOSE DATABASES ALL
SET PROCEDURE TO
= SQLDISCONNECT(0)
CLEAR
_SCREEN.windowstate = 2
_SCREEN.caption = "Microsoft Visual Foxpro 5.0 Perfessional"
_SCREEN.closable = .T.
_SCREEN.movable = .T.
_SCREEN.minbutton = .T.
_SCREEN.maxbutton = .T.
_SCREEN.controlbox = .T.
_SCREEN.backcolor = RGB(255,255,255)
_SCREEN.picture = ""
RELEASE mainuser
SET HELP ON
SET ESCAPE ON
SET STATUS BAR ON
RELEASE ALL
PROCEDURE INIT
WAIT WINDOW NOWAIT "init Begin ....."
IF IS_NOTEBOOK = "Y"
ELSE
slkeyno = 1
slreadpw = CHR(hex("05"))+CHR(hex("23"))+CHR(hex("01"))+CHR(hex("07"))
readdata = ""
sldata = SPACE(105)
slflag = USBLANREADALL(SLKEYNO,@SLREADPW,@SLDATA)
IF TYPE("SLFlag") = "L"
= MESSAGEBOX("ERROR!ERROR-009 DLL ERROR",16,"ERROR")
QUIT
ENDIF
CLEAR
PUBLIC dcpr, limdate1, limpass1, limdate2, limpass2, limdate3, limpass3, limdate4, limpass4
PUBLIC limdate5, limpass5, limdate6, limpass6, limdate7, limpass7
PUBLIC dcve, dcsn
dcpr = ALLTRIM(SUBSTR(READDATA,1,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,1,6))))
dcve = ALLTRIM(SUBSTR(READDATA,7,4))+REPLICATE(" ",4-LEN(ALLTRIM(SUBSTR(READDATA,7,4))))
dcsn = ALLTRIM(SUBSTR(READDATA,11,11))+REPLICATE(" ",11-LEN(ALLTRIM(SUBSTR(READDATA,11,11))))
limdate1 = ALLTRIM(SUBSTR(READDATA,22,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,22,6))))
limpass1 = ALLTRIM(SUBSTR(READDATA,28,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,28,6))))
limdate2 = ALLTRIM(SUBSTR(READDATA,34,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,34,6))))
limpass2 = ALLTRIM(SUBSTR(READDATA,40,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,40,6))))
limdate3 = ALLTRIM(SUBSTR(READDATA,46,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,46,6))))
limpass3 = ALLTRIM(SUBSTR(READDATA,52,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,52,6))))
limdate4 = ALLTRIM(SUBSTR(READDATA,58,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,58,6))))
limpass4 = ALLTRIM(SUBSTR(READDATA,64,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,64,6))))
limdate5 = ALLTRIM(SUBSTR(READDATA,70,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,70,6))))
limpass5 = ALLTRIM(SUBSTR(READDATA,76,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,76,6))))
limdate6 = ALLTRIM(SUBSTR(READDATA,82,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,82,6))))
limpass6 = ALLTRIM(SUBSTR(READDATA,88,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,88,6))))
limdate7 = ALLTRIM(SUBSTR(READDATA,94,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,94,6))))
limpass7 = ALLTRIM(SUBSTR(READDATA,100,6))+REPLICATE(" ",6-LEN(ALLTRIM(SUBSTR(READDATA,100,6))))
dcversion = DCVE
keyno = DCSN
biu = 1
DO WHILE BIU <= 7
xdate = "limdate"+ALLTRIM(STR(BIU,1,0))
xpass = "limpass"+ALLTRIM(STR(BIU,1,0))
cpdate=ctod('20'+substr(&xdate,1,2)+'/'+substr(&xdate,3,2)+'/'+substr(&xdate,5,2))
xlen=len(alltrim(&xpass))
ylen=len(alltrim(&xdate))
DO CASE
case len(alltrim(&xpass)) > 0 and len(alltrim(&xdate)) > 0
case len(alltrim(&xpass)) = 0 and len(alltrim(&xdate)) = 0
OTHERWISE
IF DATE() > CPDATE
= MESSAGEBOX("讀取失敗!ERROR-002",16,"ERROR")
QUIT
ENDIF
ENDCASE
biu = BIU+1
ENDDO
ENDIF
WAIT WINDOW NOWAIT "init path ....."
PUBLIC ttpath
ttpath = "c:\"
PUBLIC wtmon, wtarea, wtwei, wtlab, wname, wallname, wsale, wrate, wpri, wpaptype, wcuno, wboxname, wcustord, wcuspec
PUBLIC wunitarea, wunitwei, wunitlab, wunitcost, wareano, wcutypeno
PUBLIC worderqty, wsend, wspecno, wboxtype, wboxno, wplandate, wcustordno, wrealunit
PUBLIC nowpercent, wsendmon, wrealwei
STORE 0 TO nowpercent
WAIT CLEAR
PUBLIC symcode, useport
PUBLIC mdstatus
mdstatus = .T.
STORE 1 TO useport
STORE "00" TO symcode
PUBLIC _creditmsg, _creditmny
_creditmsg = ""
_creditmny = 0
PUBLIC titlewhat
STORE 1 TO titlewhat
PUBLIC mycomputer
mycomputer = SYS(0)
IF MDSTATUS = .T.
ELSE
ENDIF
IF MDSTATUS = .T.
ELSE
ENDIF
thisform.refresh
PUBLIC updcvalue
IF USBOKFLAG = .F.
updcvalue = "ERROR"
THISFORM.LOGINPANEL.loginno.value = UPDCVALUE
THISFORM.LOGINPANEL.loginno.enabled = .F.
THISFORM.LOGINPANEL.LOGINNO.valid()
THISFORM.LOGINPANEL.loginpassword.setfocus
ELSE
THISFORM.LOGINPANEL.loginno.enabled = .T.
THISFORM.LOGINPANEL.loginno.value = SPACE(7)
THISFORM.LOGINPANEL.loginname.value = ""
THISFORM.LOGINPANEL.loginpassword.value = ""
THISFORM.LOGINPANEL.loginno.setfocus
ENDIF
WAIT WINDOW NOWAIT "init ok ....."
PUBLIC testflag
testflag = .F.
PROCEDURE KEYPRESS
LPARAMETERS nkeycode,nshiftaltctrl
DO CASE
CASE NKEYCODE = 27 .AND. NSHIFTALTCTRL = 3
thisform.release
ENDCASE
PROCEDURE LOAD
DECLARE SHORT GetSystemDefaultLangID IN kernel32
DECLARE SHORT GetUserDefaultLangID IN kernel32
DECLARE SHORT GetSystemDefaultLCID IN kernel32
DECLARE SHORT GetUserDefaultLCID IN kernel32
DECLARE SHORT GetThreadLocale IN kernel32
DECLARE INTEGER GetOEMCP IN kernel32
DECLARE INTEGER GetACP IN kernel32
DECLARE INTEGER GetKBCodePage IN user32
SET PROCEDURE TO s:\source\sysfunc
SET PROCEDURE TO s:\source\api232 ADDITIVE
= int_dll()
= init_usbkey()
= jie_licence()
PUBLIC languageid
languageid = 1028
PUBLIC mapodbc, form_path, textchange
mapodbc = .F.
PUBLIC poapp
LOCAL lcpath,lcoldpath
SET DEFAULT TO s:\
CLOSE DATABASES ALL
= SQLDISCONNECT(0)
SET ESCAPE OFF
SET HELP OFF
SET NULL OFF
SET TALK OFF
SET DELETED ON
SET CONFIRM ON
SET DATE YMD
SET EXCLUSIVE OFF
SET MULTILOCKS ON
SET SYSMENU OFF
SET CENTURY ON
SET HOURS TO 24
SET STATUS BAR OFF
SET SAFETY OFF
SET FUNCTION 1 TO
SET FUNCTION 2 TO
SET FUNCTION 3 TO
SET FUNCTION 4 TO
SET FUNCTION 5 TO
SET FUNCTION 6 TO
SET FUNCTION 7 TO
SET FUNCTION 8 TO
SET FUNCTION 9 TO
SET FUNCTION 10 TO
SET FUNCTION 11 TO
SET FUNCTION 12 TO
this.left = 0
this.top = 0
this.autocenter = .T.
_SCREEN.windowstate = 2
default_path = SYS(2003)
default_path = SYS(2027,DEFAULT_PATH)
sys_temp = DEFAULT_PATH+"\temp"
sys_temp = SYS(2027,SYS_TEMP)
addprin = ""
temp_path = DEFAULT_PATH+"\temp"
dbf_path = SYS(2027,TEMP_PATH)
dbf_path = DEFAULT_PATH+"\dbf"
dbf_path = SYS(2027,DBF_PATH)
source_path = DEFAULT_PATH+"\source"
source_path = SYS(2027,SOURCE_PATH)
bmp_path = DEFAULT_PATH+"\bmp"
bmp_path = SYS(2027,BMP_PATH)
report_path = DEFAULT_PATH+"\report"
report_path = SYS(2027,REPORT_PATH)
vcx_path = DEFAULT_PATH+"\Vcx"
vcx_path = SYS(2027,VCX_PATH)
xls_path = DEFAULT_PATH+"\Xls"
xls_path = SYS(2027,XLS_PATH)
prod_path = DEFAULT_PATH+"\Prod"
prod_path = SYS(2027,PROD_PATH)
papdata_path = DEFAULT_PATH+"\Papdata"
papdata_path = SYS(2027,PAPDATA_PATH)
form_path = DEFAULT_PATH+"\form"
form_path = SYS(2027,FORM_PATH)
set path to &Dbf_Path;&temp_path;&report_path;&bmp_path;&Vcx_path;&source_path;&Xls_path;&link_path;&sys_temp
ON ERROR do errhand with error( ), message( ), message(1), program( ), lineno( )
PUBLIC mapdrive, sqlcomputer, wdatabase, sqluser, sqlpsw, useconnectid
PUBLIC yuseprinter, yusereport
yuseprinter = ""
yusereport = ""
thisform.readinfo
PUBLIC ttpath
ttpath = "c:\"
PUBLIC meditflag
meditflag = .F.
PUBLIC wtmon, wtarea, wtwei, wtlab, wname, wallname, wsale, wrate, wpri
PUBLIC wunitarea, wunitwei, wunitlab, wunitcost, wareano, wcutypeno
PUBLIC worderqty, wsend, wspecno, wboxtype, wboxno, wplandate, wcustordno, wrealunit
PUBLIC nowpercent, wsendmon
STORE 0 TO nowpercent
WAIT CLEAR
PUBLIC _creditmsg, _creditmny
_creditmsg = ""
_creditmny = 0
PUBLIC usbokflag, dcversion, keyno
usbokflag = .T.
dcversion = "2.1"
keyno = "dc300-X-0003"
PUBLIC yuenanflag
yuenanflag = .T.
PUBLIC fordc_visible
fordc_visible = .F.
RETURN .T.
WAIT WINDOW NOWAIT "Load Dll ....."
DECLARE SHORT GetSystemDefaultLangID IN kernel32
DECLARE SHORT GetUserDefaultLangID IN kernel32
DECLARE SHORT GetSystemDefaultLCID IN kernel32
DECLARE SHORT GetUserDefaultLCID IN kernel32
DECLARE SHORT GetThreadLocale IN kernel32
DECLARE INTEGER GetOEMCP IN kernel32
DECLARE INTEGER GetACP IN kernel32
DECLARE INTEGER GetKBCodePage IN user32
SET PROCEDURE TO s:\source\sysfunc
SET PROCEDURE TO s:\source\api232 ADDITIVE
ON ERROR do errhand with error( ), message( ), message(1), program( ), lineno( )
= int_dll()
= init_usbkey()
= jie_licence()
PUBLIC qprfile, qupldstatus, qupmsg, quperpno, qupdcno, qupir
PUBLIC mapdrive, dirshare, loginpsw, sqlserver, wdatabase, useconnectid
PUBLIC subrandval
subrandval = 0
IF NOT DIRECTORY("c:\Program_Files_dc")
MD c:\Program_Files_dc
ENDIF
IF NOT FILE("C:\Program_Files_dc\dcstatus.txt")
gnerrfile = FCREATE("C:\Program_Files_dc\dcstatus.txt")
IF GNERRFILE < 0
ELSE
= FCLOSE(GNERRFILE)
ENDIF
ENDIF
WAIT WINDOW NOWAIT "dcstatus ....."
STORE FOPEN("C:\Program_Files_dc\dcstatus.txt") TO gnfilehandle
STORE FSEEK(GNFILEHANDLE,0,2) TO gnend
STORE FSEEK(GNFILEHANDLE,0) TO gntop
toolflag = .F.
IF GNEND <= 0
mapdrive = SPACE(2)
dirshare = SPACE(80)
loginpsw = SPACE(30)
sqlserver = SPACE(30)
wdatabase = SPACE(30)
toolflag = .T.
ELSE
rvar = FREAD(GNFILEHANDLE,GNEND)
uvar = ALLTRIM(UNLOCK_JM(RVAR))+","
ciu = 1
DO WHILE CIU <= 5
xpos = AT(",",UVAR)
DO CASE
CASE CIU = 1
mapdrive = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 2
dirshare = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 3
loginpsw = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 4
sqlserver = SUBSTR(UVAR,1,XPOS-1)
CASE CIU = 5
wdatabase = SUBSTR(UVAR,1,XPOS-1)
ENDCASE
uvar = SUBSTR(UVAR,XPOS+1,999)
ciu = CIU+1
ENDDO
ENDIF
= FCLOSE(GNFILEHANDLE)
IF TOOLFLAG = .T.
= MESSAGEBOX("Tool Setup First........",16,"Message")
QUIT
ELSE
nretu = connecttonetwork(ALLTRIM(DIRSHARE),ALLTRIM(MAPDRIVE),WDATABASE,ALLTRIM(LOGINPSW))
IF NRETU = 0 .OR. NRETU = 85
ELSE
DO CASE
CASE NRETU = 5
erms = "没有使用网络资源的权利。"
CASE NRETU = 8
erms = "没有足够的内存来启动向导对话框。"
CASE NRETU = 66
erms = "设备类型与资源类型不匹配。"
CASE NRETU = 67
erms = "网络资源名称不合法或不存在。"
CASE NRETU = 86
erms = "指定的密码无效。"
CASE NRETU = 1200
erms = "本地驱动器名称无效。"
CASE NRETU = 1202
erms = "本地驱动器名称在用户配置文件中已经存在。"
CASE NRETU = 1203
erms = "网络部件没启动或指定名称不可用,操作不能执行。"
CASE NRETU = 1205
erms = "系统不能打开用户配置文件来处理永久性连接。"
CASE NRETU = 1206
erms = "用户配置文件格式不正确。"
CASE NRETU = 1208
erms = "发生了特定网络错误。"
CASE NRETU = 1222
erms = "网络不可用。"
CASE NRETU = 2250
erms = "不是一个重定向驱动器或系统当前没有连接到该驱动器。"
CASE NRETU = 2401
erms = "有打开的文件,不能断开。"
CASE NRETU = 2404
erms = "驱动器被一个活动进程使用并且不能断开连接。"
OTHERWISE
erms = ""
ENDCASE
= MESSAGEBOX("Map Drive Error"+ALLTRIM(ERMS))
QUIT
ENDIF
ENDIF
PUBLIC mapodbc, form_path, textchange
mapodbc = .F.
PUBLIC poapp
LOCAL lcpath,lcoldpath
SET DEFAULT TO s:\
WAIT WINDOW NOWAIT "Begin ....."
CLOSE DATABASES ALL
= SQLDISCONNECT(0)
SET ESCAPE OFF
SET HELP ON
SET NULL OFF
SET EXACT ON
SET TALK OFF
SET DELETED ON
SET CONFIRM ON
SET DATE YMD
SET EXCLUSIVE OFF
SET MULTILOCKS ON
SET SYSMENU OFF
SET CENTURY ON
SET HOURS TO 24
SET STATUS BAR OFF
SET SAFETY OFF
SET FUNCTION 1 TO
SET FUNCTION 2 TO
SET FUNCTION 3 TO
SET FUNCTION 4 TO
SET FUNCTION 5 TO
SET FUNCTION 6 TO
SET FUNCTION 7 TO
SET FUNCTION 8 TO
SET FUNCTION 9 TO
SET FUNCTION 10 TO
SET FUNCTION 11 TO
SET FUNCTION 12 TO
this.left = 0
this.top = 0
this.autocenter = .T.
_SCREEN.windowstate = 2
default_path = SYS(2003)
default_path = SYS(2027,DEFAULT_PATH)
sys_temp = DEFAULT_PATH+"\temp"
sys_temp = SYS(2027,SYS_TEMP)
addprin = ""
temp_path = DEFAULT_PATH+"\temp"
dbf_path = SYS(2027,TEMP_PATH)
dbf_path = DEFAULT_PATH+"\dbf"
dbf_path = SYS(2027,DBF_PATH)
source_path = DEFAULT_PATH+"\source"
source_path = SYS(2027,SOURCE_PATH)
bmp_path = DEFAULT_PATH+"\bmp"
bmp_path = SYS(2027,BMP_PATH)
report_path = DEFAULT_PATH+"\report"
report_path = SYS(2027,REPORT_PATH)
vcx_path = DEFAULT_PATH+"\Vcx"
vcx_path = SYS(2027,VCX_PATH)
xls_path = DEFAULT_PATH+"\Xls"
xls_path = SYS(2027,XLS_PATH)
prod_path = DEFAULT_PATH+"\Prod"
prod_path = SYS(2027,PROD_PATH)
papdata_path = DEFAULT_PATH+"\Papdata"
papdata_path = SYS(2027,PAPDATA_PATH)
form_path = DEFAULT_PATH+"\form"
form_path = SYS(2027,FORM_PATH)
set path to &Dbf_Path;&temp_path;&report_path;&bmp_path;&Vcx_path;&source_path;&Xls_path;&link_path;&sys_temp
recovery_path = DEFAULT_PATH
default_path = "c:\"
set defa to &default_path
WAIT WINDOW NOWAIT "defuser ....."
DO defuser
WAIT WINDOW NOWAIT "WAIT FINDING ....."
UseConnectId= sqlconnect('&sqlserver','sa','sa')
WAIT CLEAR
IF USECONNECTID <= 0
= resulterror("无法与后端连接,请确认 ODBC 设定无误。")
CANCEL
ELSE
= SQLSETPROP(USECONNECTID,"Transactions",2)
ENDIF
result = SQLEXEC(USECONNECTID,"select * from allfile","allfile")
SELECT allfile
INDEX ON ENG_NAME TAG allfile
SET ORDER TO 1
result = SQLEXEC(USECONNECTID,"select * from allfield","allfield")
SELECT allfield
INDEX ON DBFNAME+FIELDNAME TAG allfield1
INDEX ON DBFNAME TAG allfield2
SET ORDER TO 1
result = SQLEXEC(USECONNECTID,"select * from loadfile","loadfile")
SELECT loadfile
INDEX ON FILENAME TAG loadfile
WAIT WINDOW NOWAIT "Odbc Finish ....."
result = SQLEXEC(USECONNECTID,"select * from dcsystem","dcsystem")
SELECT dcsystem
_dcname = DCSYSTEM.dcname
sysdec.decprice = DCSYSTEM.decprice
sysdec.dectprice = DCSYSTEM.dectprice
sysdec.decm2price = DCSYSTEM.decm2price
sysdec.decuweight = DCSYSTEM.decuweight
sysdec.dectweight = DCSYSTEM.dectweight
sysdec.decuarea = DCSYSTEM.decuarea
sysdec.dectarea = DCSYSTEM.dectarea
sysdec.decuaddlab = DCSYSTEM.decuaddlab
sysdec.dectaddlab = DCSYSTEM.dectaddlab
sysdec.decucost = DCSYSTEM.decucost
sysdec.dectcost = DCSYSTEM.dectcost
sysdec.specsize = DCSYSTEM.specsize
sysdec.autoordno = DCSYSTEM.auto_ordno
sysdec.cutshno = DCSYSTEM.cutshipno
sysdec.cutshlen = DCSYSTEM.cutshiplen
sysdec.lateday = DCSYSTEM.lateday
sysdec.publicpsw = DCSYSTEM.publicpsw
sysdec.checkmny = DCSYSTEM.checkmny
sysdec.multstax = DCSYSTEM.mult_stax
sysdec.otcost = DCSYSTEM.otcost
sysdec.autostock = DCSYSTEM.auto_stock
WAIT CLEAR
= closefile("dcsystem")
WAIT WINDOW NOWAIT "FINDING.."
result = SQLEXEC(USECONNECTID,"select * from paper","paper")
DO CASE
CASE RESULT < 0
= resulterror("无法取得资料")
CASE RECCOUNT("paper") = 0
sdd = CTOT(DTOC(DATE())+" 00:00:00")
edd = CTOT("2100/12/31 23:59:59")
result = SQLEXEC(USECONNECTID,"INSERT INTO paper (paper,wei,cost1,cost2,cost3,sdate,edate) VALUES ('*',0,0,0,0,?sdd,?edd)")
ENDCASE
result = SQLEXEC(USECONNECTID,"Set Rowcount 1")
result = SQLEXEC(USECONNECTID,"select * from sysuser","sysuser")
DO CASE
CASE RESULT < 0
= resulterror("无法取得使用者资料")
CASE RECCOUNT("sysuser") = 0
result = SQLEXEC(USECONNECTID,"INSERT INTO sysuser (user_no,user_name,sys_psw,pord_id,bord_id,mrt_id,docright) VALUES ('1234','sys','4321','9','9','9','Y')")
ENDCASE
IF RESULT < 0
= resulterror("无法起始开始设定..")
ELSE
companydata.companyname = "尚未设定公司资料"
result = SQLEXEC(USECONNECTID,"select * from company","company")
IF RESULT < 0
resulterror("无法取得公司资料")
ELSE
IF RECCOUNT("company") = 0
result = SQLEXEC(USECONNECTID,"INSERT INTO company (type,co_name) VALUES (1,' ')")
ENDIF
= SQLEXEC(USECONNECTID,"select * from company","company")
companydata.companyname = COMPANY.co_name
companydata.coengname = COMPANY.engname
companydata.companytype = COMPANY.type
companydata.cntsdate = COMPANY.cntsdate
companydata.saletype = COMPANY.saletype
companydata.unicode = COMPANY.unicode
companydata.mrtclose = COMPANY.mrtclose
companydata.papclose = COMPANY.papclose
companydata.boxclose = COMPANY.boxclose
ENDIF
ENDIF
= closefile("sysuser")
= closefile("company")
= closefile("paper")
WAIT WINDOW NOWAIT "Basic ok ....."
result = SQLEXEC(USECONNECTID,"set Rowcount 0")
result = SQLEXEC(USECONNECTID,"set Rowcount 0")
PUBLIC ttpath
ttpath = "c:\"
PUBLIC meditflag
meditflag = .F.
PUBLIC wtmon, wtarea, wtwei, wtlab, wname, wallname, wsale, wrate, wpri
PUBLIC wunitarea, wunitwei, wunitlab, wunitcost, wareano, wcutypeno
PUBLIC worderqty, wsend, wspecno, wboxtype, wboxno, wplandate, wcustordno, wrealunit
PUBLIC nowpercent, wsendmon
STORE 0 TO nowpercent
WAIT CLEAR
PUBLIC _creditmsg, _creditmny
_creditmsg = ""
_creditmny = 0
PUBLIC usbokflag, dcversion, keyno
usbokflag = .T.
dcversion = "2.1"
keyno = "dc300-X-0003"
PUBLIC yuenanflag
yuenanflag = .T.
PUBLIC doexename
doexename = ""
WAIT WINDOW NOWAIT "Load OK ....."
PROCEDURE CLICK
IF UPPER(THIS.PARENT.CONFIRMPASSWORDTEXT.value) == UPPER(THIS.PARENT.NEWPASSWORDTEXT.value)
IF YUENANFLAG = .T.
mainuser.user_psw = THIS.PARENT.CONFIRMPASSWORDTEXT.value
mainuser.user_mrtid = THIS.PARENT.TEXT1.value
result = SQLEXEC(USECONNECTID,"update sysuser set sys_psw=?MainUser.User_Psw,mrt_id=?MainUser.User_mrtId where user_no=?MainUser.User_No")
IF RESULT < 0
resulterror("Sql Update Error")
ELSE
= SQLCOMMIT(USECONNECTID)
= getsprnodata()
= MESSAGEBOX("Update Ok",64,"Message")
ENDIF
THIS.PARENT.COMMAND2.click()
ELSE
= MESSAGEBOX("LANGUAGE IS DIFFERENT!",16,"ERROR")
ENDIF
ELSE
= MESSAGEBOX("Confirm Password Error",16,"Message")
THIS.PARENT.confirmpasswordtext.value = ""
THIS.PARENT.text1.value = ""
THIS.PARENT.confirmpasswordtext.setfocus
ENDIF
THISFORM.changepasswordpanel.visible = .F.
thisform.salarycnt = 0
thisform.refresh
PROCEDURE CLICK
IF UPPER(THIS.PARENT.CONFIRMPASSWORDTEXT.value) == UPPER(THIS.PARENT.NEWPASSWORDTEXT.value)
IF YUENANFLAG = .T.
mainuser.user_psw = THIS.PARENT.CONFIRMPASSWORDTEXT.value
mainuser.user_mrtid = THIS.PARENT.TEXT1.value
result = SQLEXEC(USECONNECTID,"update sysuser set sys_psw=?MainUser.User_Psw,mrt_id=?MainUser.User_mrtId where user_no=?MainUser.User_No")
IF RESULT < 0
resulterror("Sql Update Error")
ELSE
= SQLCOMMIT(USECONNECTID)
= getsprnodata()
= MESSAGEBOX("Update Ok",64,"Message")
ENDIF
THIS.PARENT.COMMAND2.click()
ELSE
= MESSAGEBOX("LANGUAGE IS DIFFERENT!",16,"ERROR")
ENDIF
ELSE
= MESSAGEBOX("Confirm Password Error",16,"Message")
THIS.PARENT.confirmpasswordtext.value = ""
THIS.PARENT.text1.value = ""
THIS.PARENT.confirmpasswordtext.setfocus
ENDIF
THISFORM.changepasswordpanel.visible = .F.
thisform.salarycnt = 0
thisform.refresh
PROCEDURE VALID
IF THIS.value = "9"
= MESSAGEBOX("You Do Not Have The Right",16,"Error")
RETURN .F.
ENDIF
PROCEDURE VALID
IF THIS.value = "9"
= MESSAGEBOX("You Do Not Have The Right",16,"Error")
RETURN .F.
ENDIF
PROCEDURE KEYPRESS
LPARAMETERS nkeycode,nshiftaltctrl
DO CASE
CASE NKEYCODE = 27
IF MESSAGEBOX("Are You Sure?",36,"Message") = 6
thisform.release
ENDIF
CASE NKEYCODE = 25
IF MDSTATUS = .T.
mdstatus = .F.
ELSE
mdstatus = .T.
ENDIF
ENDCASE
PROCEDURE VALID
IF LASTKEY() <> 27
IF USBOKFLAG = .F.
ELSE
userno = THISFORM.LOGINPANEL.LOGINNO.value
result = SQLEXEC(USECONNECTID,"select * from sysuser where user_no = ?userno","sysuser")
DO CASE
CASE RESULT < 0
= resulterror("登入执行错误..")
thisform.logintime = THISFORM.logintime+1
RETURN .F.
CASE RECCOUNT("sysuser") = 0
thisform.logintime = THISFORM.logintime+1
RETURN .F.
CASE RECCOUNT("sysuser") > 0
WITH MAINUSER
.user_no = SYSUSER.user_no
.user_name = SYSUSER.user_name
.user_mrtid = SYSUSER.mrt_id
.user_ordid = SYSUSER.ord_id
.user_psw = SYSUSER.sys_psw
ENDWITH
addpno = SYSUSER.pord_id
addbno = SYSUSER.bord_id
THISFORM.LOGINPANEL.loginname.value = SYSUSER.user_name
thisform.refresh
ENDCASE
IF THISFORM.logintime = 99
= MESSAGEBOX("InForm Administrator!",16,"ERROR")
thisform.release
ENDIF
ENDIF
ENDIF
IF MAINUSER.user_no = "1234"
THISFORM.command1.visible = .T.
ELSE
THISFORM.command1.visible = .F.
ENDIF
PROCEDURE KEYPRESS
LPARAMETERS nkeycode,nshiftaltctrl
DO CASE
CASE NKEYCODE = 27
IF MESSAGEBOX("Are You Sure?",36,"Message") = 6
thisform.release
ENDIF
CASE NKEYCODE = 25
IF MDSTATUS = .T.
mdstatus = .F.
ELSE
mdstatus = .T.
ENDIF
ENDCASE
PROCEDURE VALID
IF LASTKEY() <> 27
IF USBOKFLAG = .F.
ELSE
userno = THISFORM.LOGINPANEL.LOGINNO.value
result = SQLEXEC(USECONNECTID,"select * from sysuser where user_no = ?userno","sysuser")
DO CASE
CASE RESULT < 0
= resulterror("登入执行错误..")
thisform.logintime = THISFORM.logintime+1
RETURN .F.
CASE RECCOUNT("sysuser") = 0
thisform.logintime = THISFORM.logintime+1
RETURN .F.
CASE RECCOUNT("sysuser") > 0
WITH MAINUSER
.user_no = SYSUSER.user_no
.user_name = SYSUSER.user_name
.user_mrtid = SYSUSER.mrt_id
.user_ordid = SYSUSER.ord_id
.user_psw = SYSUSER.sys_psw
ENDWITH
addpno = SYSUSER.pord_id
addbno = SYSUSER.bord_id
THISFORM.LOGINPANEL.loginname.value = SYSUSER.user_name
thisform.refresh
ENDCASE
IF THISFORM.logintime = 99
= MESSAGEBOX("InForm Administrator!",16,"ERROR")
thisform.release
ENDIF
ENDIF
ENDIF
IF MAINUSER.user_no = "1234"
THISFORM.command1.visible = .T.
ELSE
THISFORM.command1.visible = .F.
ENDIF
PROCEDURE KEYPRESS
LPARAMETERS nkeycode,nshiftaltctrl
DO CASE
CASE NKEYCODE = 27
IF MESSAGEBOX("Are You Sure ?",36,"Message") = 6
thisform.release
ENDIF
CASE NKEYCODE = 13
IF USBOKFLAG = .F.
_SCREEN.caption = "DCINFORMATION"
THISFORM.loginpanel.visible = .F.
SET SAFETY ON
thisform.hide
DO dcmain
IF USED("help")
= closefile("help")
ENDIF
thisform.show
thisform.release
ELSE
userno = ALLTRIM(THISFORM.LOGINPANEL.LOGINNO.value)
result = SQLEXEC(USECONNECTID,"select * from sysuser where user_no = ?userno","sysuser")
IF ALLTRIM(THIS.value) == ALLTRIM(MAINUSER.user_psw)
WITH MAINUSER
.user_mainright = SYSUSER.mainright
.user_subrighta = SYSUSER.subrighta
.user_subrightb = SYSUSER.subrightb
.user_subrightc = SYSUSER.subrightc
.user_subrightd = SYSUSER.subrightd
.user_subrighte = SYSUSER.subrighte
.user_subrightf = SYSUSER.subrightf
.user_subrightg = SYSUSER.subrightg
.user_subrighth = SYSUSER.subrighth
.user_subrighti = SYSUSER.subrighti
.user_subrightj = SYSUSER.subrightj
.user_subrightk = SYSUSER.subrightk
.user_subrightl = SYSUSER.subrightl
.user_subrightm = SYSUSER.subrightm
.user_docright = SYSUSER.docright
ENDWITH
_SCREEN.caption = COMPANYDATA.companyname+" "+"【User: "+ALLTRIM(MAINUSER.user_name)+" 】"
= closefile("SysUser")
THISFORM.loginpanel.visible = .F.
ttpath = "c:\"+ALLTRIM(MAINUSER.user_no)+"\"
if DIRECTORY('&ttpath')
ELSE
md &ttpath
ENDIF
PUBLIC myip, myname, mymac, mydisk, conninternet
IF isconnected() = 1
conninternet = " *Internet:OK*"
ELSE
conninternet = " *Internet:Failure*"
ENDIF
myip = ALLTRIM(getip())
myname = ALLTRIM(getname())
mymac = " Netword Card MAC:"+ALLTRIM(getmac(1))
mydisk = " Hd Searial No:"+ALLTRIM(getserial(0))
wantname = " DC3000 System IP:"+ALLTRIM(MYIP)+" Computer Name:"+ALLTRIM(MYNAME)+MYMAC+MYDISK+CONNINTERNET
IF USED("tsysgraph")
= closefile("tsysgraph")
ENDIF
PUBLIC totgraph
xuser = ALLTRIM(MAINUSER.user_no)
IF XUSER == "1234" .OR. XUSER == "9899"
totgraph = 0
ELSE
result = SQLEXEC(USECONNECTID,"SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED")
result = SQLEXEC(USECONNECTID,"SET DEADLOCK_PRIORITY LOW")
result = SQLEXEC(USECONNECTID,"select * from sysgraph where user_no=?xuser","tsysgraph")
IF RESULT < 0
ELSE
IF RECCOUNT("tsysgraph") = 0
totgraph = 0
ELSE
PUBLIC g_user_no[RECCOUNT("tsysgraph")], g_seq_no[RECCOUNT("tsysgraph")], g_graphname[RECCOUNT("tsysgraph")], g_graph_path[RECCOUNT("tsysgraph")]
totgraph = RECCOUNT("tsysgraph")
SELECT tsysgraph
GOTO TOP
DO WHILE NOT EOF()
g_user_no[RECNO()] = USER_NO
g_seq_no[RECNO()] = SEQ_NO
g_graphname[RECNO()] = GRAPHNAME
g_graph_path[RECNO()] = GRAPH_PATH
SKIP 1
ENDDO
ENDIF
ENDIF
ENDIF
textchange = THIS.PARENT.OPTIONGROUP1.value
SET SAFETY ON
thisform.hide
PUBLIC poapp
LOCAL lcpath,lcoldpath
lcpath = "s:"
SET DEFAULT TO (LCPATH)
DO FORM help NAME poapp WITH wantname
READ EVENTS
thisform.show
THISFORM.loginpanel.visible = .T.
THISFORM.LOGINPANEL.loginpassword.value = ""
THISFORM.LOGINPANEL.loginno.enabled = .T.
THISFORM.LOGINPANEL.loginno.value = SPACE(7)
THISFORM.LOGINPANEL.loginno.setfocus
ELSE
= MESSAGEBOX("Password Error !!",48,"Error")
thisform.logintime = THISFORM.logintime+1
THISFORM.LOGINPANEL.loginpassword.value = ""
THISFORM.LOGINPANEL.LOGINNO.setfocus()
IF THISFORM.logintime > 99
= MESSAGEBOX("You Password Is Not Correct. Please Inform Administrator...."+CHR(13)+"若您忘记您的代号密码 请向资讯人员询问确认 ",16,"Message")
thisform.exitcmd
ENDIF
ENDIF
ENDIF
ENDCASE
PROCEDURE KEYPRESS
LPARAMETERS nkeycode,nshiftaltctrl
DO CASE
CASE NKEYCODE = 27
IF MESSAGEBOX("Are You Sure ?",36,"Message") = 6
thisform.release
ENDIF
CASE NKEYCODE = 13
IF USBOKFLAG = .F.
_SCREEN.caption = "DCINFORMATION"
THISFORM.loginpanel.visible = .F.
SET SAFETY ON
thisform.hide
DO dcmain
IF USED("help")
= closefile("help")
ENDIF
thisform.show
thisform.release
ELSE
userno = ALLTRIM(THISFORM.LOGINPANEL.LOGINNO.value)
result = SQLEXEC(USECONNECTID,"select * from sysuser where user_no = ?userno","sysuser")
IF ALLTRIM(THIS.value) == ALLTRIM(MAINUSER.user_psw)
WITH MAINUSER
.user_mainright = SYSUSER.mainright
.user_subrighta = SYSUSER.subrighta
.user_subrightb = SYSUSER.subrightb
.user_subrightc = SYSUSER.subrightc
.user_subrightd = SYSUSER.subrightd
.user_subrighte = SYSUSER.subrighte
.user_subrightf = SYSUSER.subrightf
.user_subrightg = SYSUSER.subrightg
.user_subrighth = SYSUSER.subrighth
.user_subrighti = SYSUSER.subrighti
.user_subrightj = SYSUSER.subrightj
.user_subrightk = SYSUSER.subrightk
.user_subrightl = SYSUSER.subrightl
.user_subrightm = SYSUSER.subrightm
.user_docright = SYSUSER.docright
ENDWITH
_SCREEN.caption = COMPANYDATA.companyname+" "+"【User: "+ALLTRIM(MAINUSER.user_name)+" 】"
= closefile("SysUser")
THISFORM.loginpanel.visible = .F.
ttpath = "c:\"+ALLTRIM(MAINUSER.user_no)+"\"
if DIRECTORY('&ttpath')
ELSE
md &ttpath
ENDIF
PUBLIC myip, myname, mymac, mydisk, conninternet
IF isconnected() = 1
conninternet = " *Internet:OK*"
ELSE
conninternet = " *Internet:Failure*"
ENDIF
myip = ALLTRIM(getip())
myname = ALLTRIM(getname())
mymac = " Netword Card MAC:"+ALLTRIM(getmac(1))
mydisk = " Hd Searial No:"+ALLTRIM(getserial(0))
wantname = " DC3000 System IP:"+ALLTRIM(MYIP)+" Computer Name:"+ALLTRIM(MYNAME)+MYMAC+MYDISK+CONNINTERNET
IF USED("tsysgraph")
= closefile("tsysgraph")
ENDIF
PUBLIC totgraph
xuser = ALLTRIM(MAINUSER.user_no)
IF XUSER == "1234" .OR. XUSER == "9899"
totgraph = 0
ELSE
result = SQLEXEC(USECONNECTID,"SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED")
result = SQLEXEC(USECONNECTID,"SET DEADLOCK_PRIORITY LOW")
result = SQLEXEC(USECONNECTID,"select * from sysgraph where user_no=?xuser","tsysgraph")
IF RESULT < 0
ELSE
IF RECCOUNT("tsysgraph") = 0
totgraph = 0
ELSE
PUBLIC g_user_no[RECCOUNT("tsysgraph")], g_seq_no[RECCOUNT("tsysgraph")], g_graphname[RECCOUNT("tsysgraph")], g_graph_path[RECCOUNT("tsysgraph")]
totgraph = RECCOUNT("tsysgraph")
SELECT tsysgraph
GOTO TOP
DO WHILE NOT EOF()
g_user_no[RECNO()] = USER_NO
g_seq_no[RECNO()] = SEQ_NO
g_graphname[RECNO()] = GRAPHNAME
g_graph_path[RECNO()] = GRAPH_PATH
SKIP 1
ENDDO
ENDIF
ENDIF
ENDIF
textchange = THIS.PARENT.OPTIONGROUP1.value
SET SAFETY ON
thisform.hide
PUBLIC poapp
LOCAL lcpath,lcoldpath
lcpath = "s:"
SET DEFAULT TO (LCPATH)
DO FORM help NAME poapp WITH wantname
READ EVENTS
thisform.show
THISFORM.loginpanel.visible = .T.
THISFORM.LOGINPANEL.loginpassword.value = ""
THISFORM.LOGINPANEL.loginno.enabled = .T.
THISFORM.LOGINPANEL.loginno.value = SPACE(7)
THISFORM.LOGINPANEL.loginno.setfocus
ELSE
= MESSAGEBOX("Password Error !!",48,"Error")
thisform.logintime = THISFORM.logintime+1
THISFORM.LOGINPANEL.loginpassword.value = ""
THISFORM.LOGINPANEL.LOGINNO.setfocus()
IF THISFORM.logintime > 99
= MESSAGEBOX("You Password Is Not Correct. Please Inform Administrator...."+CHR(13)+"若您忘记您的代号密码 请向资讯人员询问确认 ",16,"Message")
thisform.exitcmd
ENDIF
ENDIF
ENDIF
ENDCASE
PROCEDURE CLICK
SET TALK OFF
DO FORM logtool TO pass WITH "FUNC","您无权限用此模块"
IF PASS
DO FORM tools
thisform.readinfo
THISFORM.LOGINPANEL.loginno.setfocus
ELSE
RETURN .F.
ENDIF
PROCEDURE CLICK
SET TALK OFF
DO FORM logtool TO pass WITH "FUNC","您无权限用此模块"
IF PASS
DO FORM tools
thisform.readinfo
THISFORM.LOGINPANEL.loginno.setfocus
ELSE
RETURN .F.
ENDIF
联系邮箱
kxwwzc@126.com