117 messaggi dal 26 settembre 2001
Getrows?
come funziona?
il mio script è:
<%
'testo = testo&vbCrLf&stringa
Server.ScriptTimeOut=1000
%>

<html>

<head>
<meta http-equiv="Content-Language" content="it">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<META http-equiv="REFRESH" content="1; url=Abilitaz.asp">
<title></title>
</head>

<body bgcolor=#e0e0e0 bottomMargin=1 leftMargin=1>
<tr><H1 ALIGN =center><span style="font-weight: 400"><font color="#000080"><B1>CONTROLLO ACCESSI</B1></font></span></H1>


<p ALIGN =center><font color="#000080" face="Arial" size="4">
<span style="background-color: #FFFFFF">GESTIONE ANAGRAFICA- RIPRISTINO ABILITAZIONI
UTENTE</span></font></p>


<%

Dim objConn,objRS2,errore,FileObject,testo

Set objConn = Server.CreateObject("ADODB.Connection")
objConn.open "CA_JET","CA_IJET","caijet"

Set objRS = objConn.Execute("SELECT * From ANAGRAFICA")
while(objRS.EOF=false)
if objRS("Livello")<>"0" then
dim varliv,livell
varliv=objRS(6)
arr = split(varliv,",")
for i=0 to Ubound(arr)
livell=arr(i)
if livell="A" then
liv="1"
end if
if livell="B" then
liv="2"
end if
if livell="C" then
liv="3"
end if
if livell="D" then
liv="4"
end if

Set objRS3 = objConn.Execute("SELECT * From TERMINALI Where Cod_Area= '" & liv & "' order by Cod_Terminale")
while(objRS3.EOF=false)
term=objRS3("Cod_Terminale")
if objRS("Scadenza")<>"" then
data=objRS("Scadenza")
arrs=split(data,"/")
gg=arrs(0)
mm=arrs(1)
aaaa=arrs(2)
aa=right(aaaa,2)
if objRS("Tipo")="D" then
stringa="P"& objRS3("Postazione") &""& objRS3("Indirizzo") &"AGGTABACCE00000"& objRS("Badge")&"06000023590000"& aa &""& mm &""& gg &"0000"
else
stringa="P"& objRS3("Postazione") &""& objRS3("Indirizzo") &"AGGTABACCE00000"& objRS("Badge")&"15000023590000"& aa &""& mm &""& gg &"0000"
end if
else
if objRS("Tipo")="D" then
stringa="P"& objRS3("Postazione") &""& objRS3("Indirizzo") &"AGGTABACCE00000"& objRS("Badge")&"060000235900000000000000"
else
stringa="P"& objRS3("Postazione") &""& objRS3("Indirizzo") &"AGGTABACCE00000"& objRS("Badge")&"150000235900000000000000"
end if
end if

testo = testo&vbCrLf&stringa


objRS3.movenext
wend

next
End if
objRS.movenext
Wend

Set FileObject=Server.CreateObject("Scripting.FileSystemObject")
Set OutStream=FileObject.OpenTextFile("C:\Programmi\Kw-Line\completa.txt",8,true)
Outstream.WriteLine(testo)

OutStream.Close
Set OutStream=Nothing
Set FileObject=Nothing


%>
<br>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"><font size="4" color="#000080">RIPRISTINO ABILITAZIONI
AVVENUTO CON SUCCESSO.</font><font size="4">.</font></p>
<p align="center"> </p>

</body>

</html>


1.605 messaggi dal 06 settembre 2002
prova così
<%
'testo = testo&vbCrLf&stringa
Server.ScriptTimeOut=1000
%>

<html>

<head>
<meta http-equiv="Content-Language" content="it">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<META http-equiv="REFRESH" content="1; url=Abilitaz.asp">
<title></title>
</head>

<body bgcolor=#e0e0e0 bottomMargin=1 leftMargin=1>
<tr><H1 ALIGN =center><span style="font-weight: 400"><font color="#000080"><B1>CONTROLLO ACCESSI</B1></font></span></H1>


<p ALIGN =center><font color="#000080" face="Arial" size="4">
<span style="background-color: #FFFFFF">GESTIONE ANAGRAFICA- RIPRISTINO ABILITAZIONI
UTENTE</span></font></p>


<%

Dim objConn,objRS2,errore,FileObject,testo
dim ArrRis
dim ArrRis3


Set objConn = Server.CreateObject("ADODB.Connection")

objConn.open "CA_JET","CA_IJET","caijet"

Set objRS = objConn.Execute("SELECT * From ANAGRAFICA")
ArrRis = objRS.GetRows
set objRS = nothing
for i = 0 to UBound(ArrRis,2)
if ArrRis(0,i)<>"0" then
dim varliv,livell
varliv=ArrRis(6,i)
arr = split(varliv,",")
for i=0 to Ubound(arr)
livell=arr(i)
if livell="A" then
liv="1"
end if
if livell="B" then
liv="2"
end if
if livell="C" then
liv="3"
end if
if livell="D" then
liv="4"
end if

Set objRS3 = objConn.Execute("SELECT * From TERMINALI Where Cod_Area= '" & liv & "' order by Cod_Terminale")
ArrRis3 = objRS3.GetRows
set objRS3 = nothing
for x = 0 to UBound(ArrRis3,2)
term=ArrRis3(0,x)
if ArrRis(2,i)<>"" then
data=ArrRis(2,i)
arrs=split(data,"/")
gg=arrs(0)
mm=arrs(1)
aaaa=arrs(2)
aa=right(aaaa,2)
if ArrRis(3,i)="D" then
stringa="P"& ArrRis3(3,x) &""& ArrRis3(4,x) &"AGGTABACCE00000"& ArrRis(5,i)&"06000023590000"& aa &""& mm &""& gg &"0000"
else
stringa="P"& ArrRis3(3,x) &""& ArrRis3(4,x) &"AGGTABACCE00000"& ArrRis(5,i)&"15000023590000"& aa &""& mm &""& gg &"0000"
end if
else
if ArrRis(6,i)="D" then
stringa="P"& ArrRis3(4,x) &""& ArrRis3(4,x) &"AGGTABACCE00000"& ArrRis(5,i)&"060000235900000000000000"
else
stringa="P"& ArrRis3(4,x) &""& ArrRis3(4,x) &"AGGTABACCE00000"& ArrRis(5,i)&"150000235900000000000000"
end if
end if

testo = testo&vbCrLf&stringa



next

next
End if

next
objConn.Close
set objConn = nothing
Set FileObject=Server.CreateObject("Scripting.FileSystemObject")
Set OutStream=FileObject.OpenTextFile("C:\Programmi\Kw-Line\completa.txt",8,true)
Outstream.WriteLine(testo)

OutStream.Close
Set OutStream=Nothing
Set FileObject=Nothing


%>
<br>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"><font size="4" color="#000080">RIPRISTINO ABILITAZIONI
AVVENUTO CON SUCCESSO.</font><font size="4">.</font></p>
<p align="center"> </p>

</body>

</html>




praticamente con il metodo GetRows riempi una matrice bidimensionale con il contenuto del recordset.
scorrer una array dovrebbe essere più veloce di scorrere un recordset.

naturalmente nei vai pundi dove ho scritto es: ArrRis3(4,x)

dovrai sostituire con la giusta posizione in questo caso al posto di 4 dovrai scrivere la posizione del campo nella select

FORZA LA MAGICA ROMA

FORZA LA MAGICA ROMA
117 messaggi dal 26 settembre 2001
grazie!
mi da errore, ma i parametri che stanno fra parentesi, ex.ArrRis(0,x) equivale a objRs(0).Giusto?

1.605 messaggi dal 06 settembre 2002
si

FORZA LA MAGICA ROMA

FORZA LA MAGICA ROMA
1.605 messaggi dal 06 settembre 2002
ti suggerisco di nominare tutti i campi che ti servono nella select
es:
SELECT Livello,Scadenza,TipoBadge.... From ANAGRAFICA
invece di fare select * così sei sicuro della posizione del campo nela matrice




FORZA LA MAGICA ROMA

FORZA LA MAGICA ROMA
117 messaggi dal 26 settembre 2001
ok, funziona...ma continua ad andare in timeout...


117 messaggi dal 26 settembre 2001
ma non è che site un modo per nascondere l connection timed out, in modo che gli uento non se ne accorgano?
lo script viene comunque eseguito.

1.605 messaggi dal 06 settembre 2002
ho visto che tu fai la split di un campo della prima select per vedere quali TERMINALI sono associati ad una anagrafica (immagino).
s è così forse conviene creare una tabella intermedia tblAnagrafica_Terminali che mette in relazione le due tabelle
in questo modo potresti fare una unica select .


p.s.: che tipo di connessione usi ODBC,OLE-DB........?

FORZA LA MAGICA ROMA

FORZA LA MAGICA ROMA

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.