Escolar Documentos
Profissional Documentos
Cultura Documentos
ON ERROR DO serror
application.visible = .F.
_SCREEN.visible = .F.
SET DATE TO DMY
SET CENTURY ON
xxf = DTOC(DATE())
xxf = LEFT(xxf, 2)+SUBSTR(xxf, 4, 2)+RIGHT(xxf, 4)
xxt = SUBSTR(TIME(), 1, 5)
xxt = LEFT(xxt, 2)+SUBSTR(xxt, 4, 2)
yyf = SUBSTR(xxxdaing, 1, 8)
yyt = SUBSTR(xxxdaing, 9, 4)
IF (xxf!=yyf) OR (xxt!=yyt)
WAIT WINDOW 'Error de parmetrro.'
QUIT
ENDIF
ON ERROR
SET ENGINEBEHAVIOR 70
CLOSE DATABASES ALL
SET SAFETY OFF
SET CPDIALOG OFF
SET TALK OFF
SET DATE TO DMY
SET CENTURY ON
SET EXACT ON
SET DELETED ON
SET EXCLUSIVE OFF
SET STATUS BAR ON
SET HOURS TO 24
SET DECIMALS TO 2
SET CONSOLE OFF
application.visible = .F.
PUBLIC xcus, xnus, xcpe, xsus, xversiona
xcus = SPACE(5)
PUBLIC v_dlfact01, v_dlfdcod01, v_dlfdcod03, v_dlfesta01, v_dlfins01,
v_dlfmacc01, v_dlfmacc02, v_dlfmat01, v_dlfmcic01, v_dlfmcur01,
v_dlfmdip01, v_dlfmgra01, v_dlfmorg01, v_dlfmtip01, v_dlfnot01,
v_dlfnot03, v_dlfnot05, v_dlfralu01, v_dlfrcer01, v_dlfrcer02,
v_dlfrcur01, v_dlfrdip01, v_dlfreg01, v_dlfrlis01, v_dlfrnot01
v_dlfact01 = 0
v_dlfdcod01 = 0
v_dlfdcod03 = 0
v_dlfesta01 = 0
v_dlfins01 = 0
v_dlfmacc01 = 0
v_dlfmacc02 = 0
v_dlfmat01 = 0
v_dlfmcic01 = 0
v_dlfmcur01 = 0
v_dlfmdip01 = 0
v_dlfmgra01 = 0
v_dlfmorg01 = 0
v_dlfmtip01 = 0
v_dlfnot01 = 0
v_dlfnot03 = 0
v_dlfnot05 = 0
v_dlfralu01 = 0
v_dlfrcer01 = 0
v_dlfrcer02 = 0
v_dlfrcur01 = 0
v_dlfrdip01 = 0
v_dlfreg01 = 0
v_dlfrlis01 = 0
v_dlfrnot01 = 0
PUBLIC conexion0, conexion1, conexion2, conexionloc01, uacadcnx,
rutadefa, pathdefa, xlogin, dwindow, titlemsgbox1
PUBLIC cnxdsnacad, cnxdsnacadloc01, vbnullchar, sqldriver,
cnxdsnacadloc02, xservprin
PUBLIC changeuserlog, wlocal, conexion3, conexion4, conexionloc02,
conexion5, p_xnum
changeuserlog = .F.
LOCAL rutadefa, pathdefa
LOCAL namedsn, dsn, server, address, database, description, security,
trusted, uid
DECLARE INTEGER SQLConfigDataSource IN ODBCCP32.dll INTEGER, INTEGER,
STRING, STRING
xlogin = "Super_usuario"
xuser = ALLTRIM(SUBSTR(SYS(0), AT('#', SYS(0))+1))
OPEN DATABASE data\odatos SHARED
SELECT COUNT(*) AS cuenta, ip, loccodi FROM address WHERE ipesta='S'
INTO CURSOR vaddress
xnum = ""
IF USED("vaddress")
SELECT vaddress
IF cuenta=1
wlocal = loccodi
vvvalor = ""
DO progs\crypt WITH ALLTRIM(ip), 'U'
xnum = vvvalor
ENDIF
USE
ENDIF
SELECT COUNT(*) AS cuenta, ip FROM address WHERE loccodi='01' INTO
CURSOR vaddress
xnumloc01 = ""
IF USED("vaddress")
SELECT vaddress
IF cuenta=1
vvvalor = ""
DO progs\crypt WITH ALLTRIM(ip), 'U'
xnumloc01 = vvvalor
ENDIF
USE
ENDIF
CLOSE DATABASES
p_xnum = xnum
xxnum = xnum
x1 = VAL(SUBSTR(xxnum, 1, AT('.', xxnum)-1))
xxnum = SUBSTR(xxnum, AT('.', xxnum)+1)
hip1_1 = IIF(INT(x1/16)<10, ALLTRIM(STR(INT(x1/16))), IIF(INT(x1/16)=10,
'A', IIF(INT(x1/16)=11, 'B', IIF(INT(x1/16)=12, 'C', IIF(INT(x1/16)=13,
'D', IIF(INT(x1/16)=14, 'E', IIF(INT(x1/16)=15, 'F', '')))))))
hip1_2 = IIF(MOD(x1, 16)<10, ALLTRIM(STR(MOD(x1, 16))), IIF(MOD(x1,
16)=10, 'A', IIF(MOD(x1, 16)=11, 'B', IIF(MOD(x1, 16)=12, 'C',
conexion5 =
'dsn='+namedsndued+';uid=ingresa_notas_bbl;pwd=sustitutorio033$'
titlemsgbox1 = "Sistema Acadmico"
dwindow = 0
cnxdsnacad =
dsn+vbnullchar+server+vbnullchar+address+vbnullchar+security+vbnullchar+d
atabase+vbnullchar+description+vbnullchar+trusted
cnxdsnacadloc01 = ""
IF xnum='192.168.1.254'
namedsn = "SistUnivAcaddued"
dsn = "DSN="+namedsn
server = "SERVER=192.168.1.254"
address = "ADDRESS=192.168.1.254,1433"
database = "DATABASE=campusdued"
description = "DESCRIPTION=Intranet Dued"
security = "Network=DBMSSOCN"
trusted = "Trusted_Connection="
sqldriver = "SQL Server"
uid = "lectordenotas2"
STORE CHR(0) TO vbnullchar
cnxdsnacadloc02 =
dsn+vbnullchar+server+vbnullchar+address+vbnullchar+security+vbnullchar+d
atabase+vbnullchar+description+vbnullchar+trusted
res = sqlconfigdatasource(0, 1, sqldriver, cnxdsnacadloc02+vbnullchar)
ENDIF
IF xnum='192.168.0.230' OR xnum='192.168.0.231'
namedsn = "SistUnivAcaddued"
dsn = "DSN="+namedsn
server = "SERVER=192.168.0.232"
address = "ADDRESS=192.168.0.232,1433"
database = "DATABASE=campusdued"
description = "DESCRIPTION=Intranet Dued"
security = "Network=DBMSSOCN"
trusted = "Trusted_Connection="
sqldriver = "SQL Server"
uid = "lectordenotas2"
STORE CHR(0) TO vbnullchar
cnxdsnacadloc02 =
dsn+vbnullchar+server+vbnullchar+address+vbnullchar+security+vbnullchar+d
atabase+vbnullchar+description+vbnullchar+trusted
res = sqlconfigdatasource(0, 1, sqldriver,
cnxdsnacadloc02+vbnullchar)
ENDIF
IF NOT EMPTY(ALLTRIM(xnumloc01))
namedsn = "SistUnivAcad"
dsn = "DSN="+namedsn
server = "SERVER="+xnumloc01
address = "ADDRESS="+xnumloc01+",1433"
database = "DATABASE=General"
description = "DESCRIPTION=Sistema Acadmico"
security = "Network=DBMSSOCN"
trusted = "Trusted_Connection="
sqldriver = "SQL Server"
STORE CHR(0) TO vbnullchar
cnxdsnacadloc01 =
dsn+vbnullchar+server+vbnullchar+address+vbnullchar+security+vbnullchar+d
atabase+vbnullchar+description+vbnullchar+trusted
ENDIF
res = sqlconfigdatasource(0, 1, sqldriver, cnxdsnacad+vbnullchar)
IF res=1
uacadcnx = SQLSTRINGCONNECT(conexion0)
IF uacadcnx<0
= MESSAGEBOX('No se puede conectar al servidor', 16, 'Error de
conexin SQL')
ELSE
= SQLDISCONNECT(uacadcnx)
SET PROCEDURE TO PROGS\dgpfun01.prg
PUBLIC xxversion
LOCAL ofs, lmayv, lsecv, lnrev, lcfile, cversion, lcsql, cversion
lmayv = 0
lsec = 0
lnrev = 0
lcfile = ALLTRIM(SYS(16, 1))
IF AT(UPPER('acaduniv'), UPPER(lcfile))=0
lcfile = '@@@@@@'
ENDIF
ON ERROR WAIT WIND 'Error comprobando versin'
ofs = CREATEOBJECT("scripting.filesystemobject")
cversion = ALLTRIM(ofs.getfileversion(lcfile))
ON ERROR
lmayv = VAL(SUBSTR(cversion, 1, AT(".", cversion, 1)-1))
lsecv = VAL(SUBSTR(cversion, AT(".", cversion, 1)+1, AT(".",
cversion, 2)-(AT(".", cversion, 1))-1))
lnrev = VAL(SUBSTR(cversion, AT(".", cversion, 2)+1, AT(".",
cversion, 3)-(AT(".", cversion, 2))-1))
xvermayv = lmayv
xversecv = lsecv
xvernrev = lnrev
xversiona = ALLTRIM(STR(lmayv, 2, 0))
+'.'+RIGHT('0'+ALLTRIM(STR(lsecv, 2, 0)),
2)+'.'+RIGHT('0'+ALLTRIM(STR(lnrev, 2, 0)), 2)
xcpsistema = 'Academico'
lcsql = "select * from general.dbo.ggtver01 where
ltrim(rtrim(vernapp))='"+xcpsistema+"'"
uacadcnx = SQLSTRINGCONNECT(conexion0)
IF uacadcnx<0
= MESSAGEBOX('No se puede conectar al servidor', 16, 'Error de
conexin SQL')
ELSE
= SQLEXEC(uacadcnx, lcsql, 'lcurver')
= SQLDISCONNECT(uacadcnx)
SELECT lcurver
IF RECCOUNT()=0
MESSAGEBOX('Error, no es posible encontrar el ID de versin.
'+CHR(13)+'Consulte con el administrador del sistema', 64,
this.cpsistema)
RETURN .F.
ENDIF
SELECT lcurver
xversionu = ALLTRIM(STR(lcurver.vermayv))
+"."+RIGHT('0'+ALLTRIM(STR(lcurver.versecv)),
2)+"."+RIGHT('0'+RIGHT('0'+ALLTRIM(STR(lcurver.vernrev)), 2), 2)
DO FORM forms\dgfin01 WITH xversiona
IF xversiona<xversionu
2)+'-'+RIGHT(dectohex(ASC(SUBSTR(lcadapter, 3, 1))),
2)+'-'+RIGHT(dectohex(ASC(SUBSTR(lcadapter, 4, 1))),
2)+'-'+RIGHT(dectohex(ASC(SUBSTR(lcadapter, 5, 1))),
2)+'-'+RIGHT(dectohex(ASC(SUBSTR(lcadapter, 6, 1))), 2)
STORE lcretval TO ma(lncnt)
ENDIF
lcsource = longtostr(lnadapter)
heapfree(getprocessheap(), 0, @lcsource)
ENDIF
ENDIF
ENDFOR
ENDIF
lcsource = longtostr(lnlenum)
heapfree(getprocessheap(), 0, @lcsource)
ENDIF
RETURN
ENDPROC
**
FUNCTION LongToStr
LPARAMETERS tnlongval
LOCAL lncnt, lcretstr, lnlongval
lcretstr = ''
lnlongval = IIF(EMPTY(tnlongval), 0, tnlongval)
FOR lncnt = 24 TO 0 STEP -8
lcretstr = CHR(INT(lnlongval/(2^lncnt)))+lcretstr
lnlongval = MOD(lnlongval, (2^lncnt))
ENDFOR
RETURN lcretstr
ENDFUNC
**
FUNCTION StrToLong
LPARAMETERS tclongstr
LOCAL lncnt, lnretval, lclongstr
lnretval = 0
lclongstr = IIF(EMPTY(tclongstr), '', tclongstr)
FOR lncnt = 0 TO 24 STEP 8
lnretval = lnretval+(ASC(lclongstr)*(2^lncnt))
lclongstr = RIGHT(lclongstr, LEN(lclongstr)-1)
ENDFOR
RETURN lnretval
ENDFUNC
**
FUNCTION IntToStr
LPARAMETERS tnintval
LOCAL lncnt, lcretstr, lnintval
lcretstr = ''
lnintval = IIF(EMPTY(tnintval), 0, tnintval)
FOR lncnt = 8 TO 0 STEP -8
lcretstr = CHR(INT(lnintval/(2^lncnt)))+lcretstr
lnintval = MOD(lnintval, (2^lncnt))
ENDFOR
RETURN lcretstr
ENDFUNC
**
FUNCTION StrToInt
LPARAMETERS tcintstr
LOCAL lncnt, lnretval, lcintstr
lnretval = 0
lcintstr = IIF(EMPTY(tcintstr), '', tcintstr)
FOR lncnt = 0 TO 8 STEP 8
lnretval = lnretval+(ASC(lcintstr)*(2^lncnt))
lcintstr = RIGHT(lcintstr, LEN(lcintstr)-1)
ENDFOR
RETURN lnretval
ENDFUNC
**
FUNCTION DecToHex
LPARAMETERS tndecnumber
LOCAL lnlength, lntemphex, lchexnumber, lndecnumber
lchexnumber = ''
lndecnumber = IIF(EMPTY(tndecnumber), 0, tndecnumber)
DO CASE
CASE lndecnumber=0
lchexnumber = '0x00000000'
CASE lndecnumber>0
lchexnumber = TRANSFORM(lndecnumber, '@0')
OTHERWISE
lchexnumber = TRANSFORM(ABS(lndecnumber), '@0')
lnlength = IIF(SUBSTR(lchexnumber, 3, 1)='0',
LEN(SUBSTR(lchexnumber, NOT AT('0', lchexnumber, 2))),
LEN(TRANSFORM(ABS(lndecnumber), '@0'))-2)
lntemphex = 4294967295
lchexnumber = TRANSFORM(lntemphex-ABS(lndecnumber)+1, '@0')
ENDCASE
RETURN lchexnumber
ENDFUNC
**
PROCEDURE serror
WAIT WINDOW 'Error de parmetrro..'
QUIT
ENDPROC
**