Matt_Unsworth
asked on
Accessing a class from cleint side code
I have the following in my global.asa:
Dim x
Set Application("x") = Server.CreateObject("Somet hing.clsSo mthing")
End Sub
I have been calling this as follows from server side code:
SomeVar = Application("x").SomeMetho d
Now I'm having to use client side script as I'm using an MSFlexgrid, so how do I access ("x") from the client side? Basically how can I get SomeVar = Application("x").SomeMetho d to work in client side code.
Looking forward to your help.
Matt.
Dim x
Set Application("x") = Server.CreateObject("Somet
End Sub
I have been calling this as follows from server side code:
SomeVar = Application("x").SomeMetho
Now I'm having to use client side script as I'm using an MSFlexgrid, so how do I access ("x") from the client side? Basically how can I get SomeVar = Application("x").SomeMetho
Looking forward to your help.
Matt.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
mmmmmm…….. this is proving more difficult than I first thought.
What I’m trying to do is place a number in a texbox then click a button which does the following:
1) Convert texbox value to variable
2) Pass variable to my class
3) Return results in an MSFlexGrid
My code is below, but at the moment it’s going into error at:
AgreementSearchResult = <%=Application("x").Search ByAgreemen t(Agreemen tVar)%>
and returning the following:
An exception of type 'Response object: 006~ASP 0185~Missing Default property was not found for the object.’ Was not handled.
<SCRIPT LANGUAGE=vbscript>
Sub cmdAgreementSearch_OnClick
Dim AgreementVar
Dim AgreementSearchResult
' Control validation
If txtAgreementSearch.value = "" Then
Msgbox "ERROR: Please enter an agreement number"
Exit Sub
End If
' convert user id to string variable, password already converted
'AgreementVar = txtAgreementSearch.value
' Bring x from the server to client side
AgreementSearchResult = <%=Application("x").Search ByAgreemen t(Agreemen tVar)%>
' Get an array back from the class and populate the MSFlexGrid with it
Dim i
MSFlexGrid1.Rows = UBound(AgreementSearchResu lt, 2) + 1
MSFlexGrid1.Cols = 11
MSFlexGrid1.FixedCols=0
MSFlexGrid1.FixedRows=1
msgbox "Rows = " & UBound(AgreementSearchResu lt, 2) + 1
' Assign headers
MSFlexGrid1.TextMatrix(0, 1) = "ID"
MSFlexGrid1.ColWidth(1) = 2000
MSFlexGrid1.TextMatrix(0, 2) = "Name"
MSFlexGrid1.ColWidth(2) = 2000
MSFlexGrid1.TextMatrix(0, 3) = "Agreement"
MSFlexGrid1.ColWidth(3) = 2000
MSFlexGrid1.TextMatrix(0, 4) = "Claim"
MSFlexGrid1.ColWidth(4) = 2000
MSFlexGrid1.TextMatrix(0, 5) = "Type"
MSFlexGrid1.ColWidth(5) = 2000
MSFlexGrid1.TextMatrix(0, 6) = "Category"
MSFlexGrid1.ColWidth(6) = 2000
MSFlexGrid1.TextMatrix(0, 7) = "Sub-Category"
MSFlexGrid1.ColWidth(7) = 2000
MSFlexGrid1.TextMatrix(0, 8) = "Department"
MSFlexGrid1.ColWidth(8) = 2000
MSFlexGrid1.TextMatrix(0, 9) = "Open Date"
MSFlexGrid1.ColWidth(9) = 2000
MSFlexGrid1.TextMatrix(0, 10) = "Close Date"
MSFlexGrid1.ColWidth(10) = 2000
MSFlexGrid1.TextMatrix(0, 11) = "Assigned To"
MSFlexGrid1.ColWidth(11) = 2000
' Set grid's width (?)
'MSFlexGrid1.width = MSFlexGrid1.ColWidth(0) + MSFlexGrid1.ColWidth(1) + MSFlexGrid1.ColWidth(2) + MSFlexGrid1.ColWidth(3) + MSFlexGrid1.ColWidth(4) + MSFlexGrid1.ColWidth(5)
if UBound(AgreementSearchResu lt) > 0 then
'call Populate_Array x
for i = 1 to Ubound(AgreementSearchResu lt, 2)
MSFlexGrid1.TextMatrix(i, 0) = TestArray(1, i)
MSFlexGrid1.TextMatrix(i, 1) = TestArray(2, i) & " " & TestArray(3, 1) & " " & TestArray(4, 1)
MSFlexGrid1.TextMatrix(i, 2) = TestArray(11, i)
MSFlexGrid1.TextMatrix(i, 3) = TestArray(12, i)
MSFlexGrid1.TextMatrix(i, 4) = TestArray(13, i)
MSFlexGrid1.TextMatrix(i, 5) = TestArray(14, i)
MSFlexGrid1.TextMatrix(i, 6) = TestArray(15, i)
MSFlexGrid1.TextMatrix(i, 7) = TestArray(23, i)
MSFlexGrid1.TextMatrix(i, 8) = TestArray(16, i)
MSFlexGrid1.TextMatrix(i, 9) = TestArray(17, i)
MSFlexGrid1.TextMatrix(i, 10) = TestArray(22, i)
next
else
msgbox "Failed"
end if
End Sub
</SCRIPT>
What I’m trying to do is place a number in a texbox then click a button which does the following:
1) Convert texbox value to variable
2) Pass variable to my class
3) Return results in an MSFlexGrid
My code is below, but at the moment it’s going into error at:
AgreementSearchResult = <%=Application("x").Search
and returning the following:
An exception of type 'Response object: 006~ASP 0185~Missing Default property was not found for the object.’ Was not handled.
<SCRIPT LANGUAGE=vbscript>
Sub cmdAgreementSearch_OnClick
Dim AgreementVar
Dim AgreementSearchResult
' Control validation
If txtAgreementSearch.value = "" Then
Msgbox "ERROR: Please enter an agreement number"
Exit Sub
End If
' convert user id to string variable, password already converted
'AgreementVar = txtAgreementSearch.value
' Bring x from the server to client side
AgreementSearchResult = <%=Application("x").Search
' Get an array back from the class and populate the MSFlexGrid with it
Dim i
MSFlexGrid1.Rows = UBound(AgreementSearchResu
MSFlexGrid1.Cols = 11
MSFlexGrid1.FixedCols=0
MSFlexGrid1.FixedRows=1
msgbox "Rows = " & UBound(AgreementSearchResu
' Assign headers
MSFlexGrid1.TextMatrix(0, 1) = "ID"
MSFlexGrid1.ColWidth(1) = 2000
MSFlexGrid1.TextMatrix(0, 2) = "Name"
MSFlexGrid1.ColWidth(2) = 2000
MSFlexGrid1.TextMatrix(0, 3) = "Agreement"
MSFlexGrid1.ColWidth(3) = 2000
MSFlexGrid1.TextMatrix(0, 4) = "Claim"
MSFlexGrid1.ColWidth(4) = 2000
MSFlexGrid1.TextMatrix(0, 5) = "Type"
MSFlexGrid1.ColWidth(5) = 2000
MSFlexGrid1.TextMatrix(0, 6) = "Category"
MSFlexGrid1.ColWidth(6) = 2000
MSFlexGrid1.TextMatrix(0, 7) = "Sub-Category"
MSFlexGrid1.ColWidth(7) = 2000
MSFlexGrid1.TextMatrix(0, 8) = "Department"
MSFlexGrid1.ColWidth(8) = 2000
MSFlexGrid1.TextMatrix(0, 9) = "Open Date"
MSFlexGrid1.ColWidth(9) = 2000
MSFlexGrid1.TextMatrix(0, 10) = "Close Date"
MSFlexGrid1.ColWidth(10) = 2000
MSFlexGrid1.TextMatrix(0, 11) = "Assigned To"
MSFlexGrid1.ColWidth(11) = 2000
' Set grid's width (?)
'MSFlexGrid1.width = MSFlexGrid1.ColWidth(0) + MSFlexGrid1.ColWidth(1) + MSFlexGrid1.ColWidth(2) + MSFlexGrid1.ColWidth(3) + MSFlexGrid1.ColWidth(4) + MSFlexGrid1.ColWidth(5)
if UBound(AgreementSearchResu
'call Populate_Array x
for i = 1 to Ubound(AgreementSearchResu
MSFlexGrid1.TextMatrix(i, 0) = TestArray(1, i)
MSFlexGrid1.TextMatrix(i, 1) = TestArray(2, i) & " " & TestArray(3, 1) & " " & TestArray(4, 1)
MSFlexGrid1.TextMatrix(i, 2) = TestArray(11, i)
MSFlexGrid1.TextMatrix(i, 3) = TestArray(12, i)
MSFlexGrid1.TextMatrix(i, 4) = TestArray(13, i)
MSFlexGrid1.TextMatrix(i, 5) = TestArray(14, i)
MSFlexGrid1.TextMatrix(i, 6) = TestArray(15, i)
MSFlexGrid1.TextMatrix(i, 7) = TestArray(23, i)
MSFlexGrid1.TextMatrix(i, 8) = TestArray(16, i)
MSFlexGrid1.TextMatrix(i, 9) = TestArray(17, i)
MSFlexGrid1.TextMatrix(i, 10) = TestArray(22, i)
next
else
msgbox "Failed"
end if
End Sub
</SCRIPT>
Cheers!!