Ciao! Come mai non riesco ad ordinare i record con questo script?

codice:
<%
    ' DEFINISCO LE VARIABILI CHE MI SERVONO PER L'APPLICAZIONE
    Dim sc, cn, rs, quanti, pag, contatore

    ' DEFINISCO LA STRINGA DI CONNESSIONE
    sc = ""
    sc = sc & "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
    sc = sc & server.MapPath("mdb-databases/prospect.mdb")

    ' IMPOSTO LA CONNESSIONE EDIL RECORDSET
    Set cn = Server.CreateObject("ADODB.Connection")
    Set rs = Server.CreateObject("ADODB.Recordset")

    ' APRO LA CONNESSIONE COL DATABASE
    cn.Open sc

    ' DEFINISCO IL NUMERO DI RECORD DA VISUALIZZARE PER OGNI PAGINA
    quanti = 20

    ' RECUPERO IL NUMERO DI PAGINA CORRENTE
    ' E CONTROLLO CHE NON SIA INFERIORE A 1
    pag = Request.QueryString("pag")
    If IsNumeric(pag) = False Or pag < 1 Then pag = 1

    ' IMPOSTO UN CONTATORE
    contatore = 0
	
if criterio="data" then
definizionecriterio="CONTACTCNT_DATE"
informa="Per data"
end if

if criterio="codice" then
definizionecriterio="CONTACTACT_CODE"
informa="Per contratto"
end if

if criterio="ragione" then
definizionecriterio="AZIENDERAG_SOC_1"
informa="Per ragione sociale"
end if

if criterio="provincia" then
definizionecriterio="AZIENDEPROVINCIA"
informa="Per provincia"
end if

if criterio="regione" then
definizionecriterio="AZIENDEREGIONE"
informa="Per regione"
end if

if criterio="codice" then
definizionecriterio="AZIENDEID_AZ"
informa="per ID"
end if

%>
Criterio ordinamento: <%=informa%>
<%
' leggo l'utente
sql7="select * from utenti WHERE id="&idutente
Set rec7 = Server.CreateObject("ADODB.Recordset")
Set Rec7=Conn.Execute(SQL7)


if rec7("sicurezza")=4 then

 %>
 <%
 

 
    ' APRO IL RECORDSET per operatore
    rs.Open "select * from produzione WHERE CONTACTOP_ID='"&rec7("idcrm")&"'  ORDER by '"&definizionecriterio&"' DESC", cn, 3, 3
    ' EFFETTUO MATERIALMENTE LA PAGINAZIONE
%>
<%else%>
<%
    ' APRO IL RECORDSET per amministratori
    rs.Open "select * from produzione ORDER by '"&definizionecriterio&"' DESC", cn, 3, 3
    ' EFFETTUO MATERIALMENTE LA PAGINAZIONE
%>
<% end if%>



<% 	if rs.eof then %>









STE NUDD!
<%
    ' ESEGUO IL CICLO
    else
	    rs.PageSize = quanti
    rs.AbsolutePage = pag
%>
         <% While rs.EOF = False And contatore < quanti %>  
          <tr>
            <td><%=rs("CONTACTCNT_DATE")%></td>
            <td>
            <%
			' carica cliente
			sql8="select * from anagrafica_contratti_attivita WHERE attivita='"&rs("CONTACTACT_CODE")&"'"
            Set rec8 = Server.CreateObject("ADODB.Recordset")
            Set Rec8 =Conn.Execute(SQL8)
			on error resume next
			sql9="select * from anagrafica_contratti WHERE id="&rec8("idcontratto")
            Set rec9 = Server.CreateObject("ADODB.Recordset")
            Set Rec9 = Conn.Execute(SQL9)
            sql10="select * from anagrafica_clienti WHERE id="&rec9("idcliente")
            Set rec10 = Server.CreateObject("ADODB.Recordset")
            Set Rec10 =Conn.Execute(SQL10)				
			%>
            <%=rec10("ragionesociale")%> - <%=rec8("attivita")%>
            </td>
            <td><%=rs("AZIENDERAG_SOC_1")%></td>
            <td><%=rs("AZIENDEPROVINCIA")%></a></td>
            <td><%=rs("AZIENDEREGIONE")%></td>
            <td>" onclick="load('lead_dettaglio.asp?idlead=<%=rs("id")%>','dx_centro');return false;"><%=rs("AZIENDEID_AZ")%></td>
            <td>
            
			<%
			' verifica se aperta contestazione
			sql6="select * from produzione_contestazioni WHERE idlead="&rs("id")
            Set rec6 = Server.CreateObject("ADODB.Recordset")
            Set Rec6=Conn.Execute(SQL6)
			if rec6.eof then
			%>
            <% 
            ' verifica se contestabile
dataodierna=date
datalead=rs("CONTACTCNT_DATE")

differenza=dataodierna-datalead

if differenza>20 then
%>
            [img]../contestazioni/icone/Stop-Normal-icon.png[/img]
<% end if %>      
<% else %>
[img]../contestazioni/icone/Stop-Normal-Orange-icon.png[/img]
<% end if %>
            <%
			' verifica se contestazione accettata
			sql6="select * from produzione_contestazioni WHERE rifiutocontestazione=1 and idlead="&rs("id")
            Set rec6 = Server.CreateObject("ADODB.Recordset")
            Set Rec6=Conn.Execute(SQL6)
			if not rec6.eof then
			%>
            [img]../contestazioni/icone/Stop-Normal-Red-icon.png[/img]
            <% end if %>
             <%
			' verifica se contestazione accettata
			sql6="select * from produzione_contestazioni WHERE okcontestazione=1 and idlead="&rs("id")
            Set rec6 = Server.CreateObject("ADODB.Recordset")
            Set Rec6=Conn.Execute(SQL6)
			if not rec6.eof then
			%>
            [img]../contestazioni/icone/Stop-Normal-Blue-icon.png[/img]
<% end if %>
</td>
          </tr>
    <%      
    rs.MoveNext
        ' INCREMENTO IL VALORE DEL CONTATORE
    contatore = contatore + 1
    Wend%>
    <%end if%>
          </table>


<%If pag > 1 Then%>
    ','dx_centro');return false;">Indietro
<%End If%>
<%
    Dim x
    x = 1
    For x = 1 To rs.PageCount
        If CInt(pag) <> x Then
%>
            [','dx_centro');return false;"><%=x%>]
<%
        Else
%>
            [','dx_centro');return false;"><%=x%>]
<%
        End If
    Next
%>
<%If rs.EOF = False Then%>
    ','dx_centro');return false;"> Avanti
<%End If%>