Bueno, no voy a leer todo el código que posteaste, así que partiré de este fragmento:
Cita: <input type=text value=<% registro112.MoveLast()
%>
<%=registro112("IdEmpresa")%>
name="IdEmpresa112" >
<%
conexion93= new ActiveXObject("ADODB.Connection")
registro93=new ActiveXObject("ADODB.Recordset")
conexion93.Open ("datos")
Fnc_Sql = "Select NombreDelegacion from 904_DELEGACIONES_DE_EMPRESA where IdEmpresa= '" & Request.form("IdEmpresa112") & "'"
De acuerdo que al programar en ASP es fácil mezclar la capa de presentación con la de lógica de negocios pero esto es ridículo, jejeje
Cambia lo anterior por:
Cita: <% registro112.MoveLast()%>
<input type=text value=<%=registro112("IdEmpresa")%> name="IdEmpresa112">
<%
set conexion93=Server.CreateObject("ADODB.Connection")
set registro93=Server.CreateObject("ADODB.recordset")
conexion93.Open "DNS=datos" 'Deberias usar OleDB no ODBC
Fnc_Sql = "Select NombreDelegacion from 904_DELEGACIONES_DE_EMPRESA where IdEmpresa= " & CInt(Trim(Request("IdEmpresa112")))
registro93.Open Fnc_Sql, conexion93, 3, 2
..... código asp que ese esos registros ...
registro93.close
conexion93.close
set registro93 = nothing
set conexion93 = nothing
%>
Bueno, con eso
si existe una tabla llamada 904_DELEGACIONES_DE_EMPRESA en una BD conectado a un ODBC llamado "Datos" y que además tenga dos campos por lo menos llamados NombreDelegacion y IdEmpresa y que este último sea numérico, ya no debe de marcar error en esa linea.
Veo que tienes muuuuuchos errores en tu página, pero los que más me pusieron la "carne de gallina"

es que tienes una conexion por recordset y un recordset por consulta
Se usa
UNA conexión por BD y a menos que vayas a usar todos las tablas al mismo tiempo, un mismo objeto RecordSet para tus consultas, eso si, cerrándolo, o si quieres crear un RS para cada consulta, pues por lo menos destruye los que ya creaste con anterioridad y que no uses.
Saludos