Windows Server 2003/IIS/Progress

lklingaman

New Member
Hi all!

I have a custom web application running on IIS/Windows 2000 Server that connects to a Progress database. We are moving to Windows Server 2003 and have set up a server to test. When we transfer over the website some of the functionality breaks in the application. There are two ways that we access Progress through a DSN named HAGEN.

Server Side ASP
Client Side RDS.

ASP Server Side still works

Example:
-------------------------------------------------
strConnect = "DSN=HAGEN;uid=user;pwd=pwd"
Set MyRS = CreateObject("ADODB.Recordset")
MyRS.CursorType = adOpenStatic
MyRS.CursorLocation = adUseClient
strSQL = "select cust.""cust-name"", cust.""cust-code"" from pub.cust where cust.""system-id"" = 'ace' order by cust.""cust-name"""
MyRS.Open strSQL, strConnect, , , adCmdText
-------------------------------------------------

RDS does not, it gives SyntaxError 7587

-------------------------------------------------
<OBJECT ID="ADS" WIDTH=1 HEIGHT=1 CLASSID="CLSID:BD96C556-65A3-11D0-983A-00C04FC29E36">
<OBJECT WIDTH=1 HEIGHT=1 classid="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" ID=ADC>

Sub OnSomeEvent()

Dim ADF, ADF2, ADF3
Dim strServer
strServer = "http://<%=Request.ServerVariables("SERVER_NAME")%>"

Dim objADORs ' Create RDSServer.DataFactory Object
Set ADF = ADS.CreateObject("RDSServer.DataFactory", strServer)

strSQL = " select rtrim(case when ""employeefreefield"".""free-field-char"" is not null then ""employeefreefield"".""free-field-char"" else '' end) as email ,"
strSQL = strSQL & " rtrim(case when ""employee"".""work-phone-ext"" is not null then ""employee"".""work-phone-ext"" else ' ' end) as ext ,"
strSQL = strSQL & " rtrim(case when ""employee"".""Employee-Name"" is not null then ""employee"".""Employee-Name"" else '' end) as empname "
strSQL = strSQL & " from ""pub"".""employee"" " strSQL = strSQL & " left outer join ""pub"".""employeefreefield"" on ""pub"".""employeefreefield"".""Employee-ID"" = ""pub"".""employee"".""Employee-ID"" and ""pub"".""employeefreefield"".""sequence"" = 1 "
strSQL = strSQl & " where ""employee"".""System-ID"" = 'ace' and ""employee"".""Record-Active"" = 1 order by ""employee"".""Employee-name"""
Set objADORs = ADF.Query("DSN=HAGEN;uid=user;pwd=pwd",strSQL)
ADC.SourceRecordset=objADORs


End Sub
-------------------------------------------------

I cannot find the reason why the page works in Windows 2000 Server, but not Windows Server 2003. If ANYBODY has a clue, please let me know.

Thank you in advance,

Larry Klingaman
IT Director
Ace Printing
 

lklingaman

New Member
I finally found it...

:blush: RDS has a default SQL option that was set to an invalid SQL string. So if a SQL string was actually passed through RDS instead of named it would not work.

Thank you,

Larry Klingaman
IT Director
Ace Printing
 
Top