Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

populating an MSFlexgrid

Posted on 2003-12-03
3
Medium Priority
?
408 Views
Last Modified: 2010-04-20
Take a look at the following code, basically all I'm doing is getting a session variable from another page and converting it to a standard variable. Then creating an array to populate an MSFlexGrid.

When I try to run the code as the page loads I get an error message Object Required G was not handled, (G is the name of my MSFlexGrid)

However, if I place this code in a sub, the page loads first and then I execute the code and it works fine - presumably because my MSFlexGrid (G) exists on the page, where as it doesn't in the earlier scenario.

How can I populate this grid when the page loads and remove the need for a click event.

Looking forward to your help.

Matt.

<SCRIPT LANGUAGE=vbscript>
Dim retVar
Dim i
Dim j
Dim SessConv
Dim a
Dim pos
Dim z
Dim w
Dim max    ' max number of elements
Dim count
   
SessConv = "<%=session("ses_search")%>"

    ReDim a(<%=session("ses_FirstDimUBound")%>, <%=session("ses_SecondDimUBound")%>)
    max = (UBound(a, 1) - LBound(a, 1) + 1) * (UBound(a, 2) - LBound(a, 2) + 1)
    count = 0
           
    For I = LBound(a, 2) To UBound(a, 2)
        ' Process 2nd dimension element for each 1st dimension values
        For J = LBound(a, 1) To UBound(a, 1)
            count = count + 1
            If count > max Then
                Exit For
            Else
                pos = InStr(SessConv, "#")
                if pos = 0 then
         a(J, I) = ""
                else
         a(J, I) = Left(SessConv, pos - 1)
                end if                
                SessConv = Mid(SessConv, pos + 1)
            End If
        Next
       
        If count > max Then Exit For
    Next
      
       retVar = a 'at this point retvar contains all the required data in an array

g.Rows = UBound(retVar, 2) + 1 ' code fails here on the 1st ref to g
g.Cols  = UBound(retVar, 1) + 1
g.FixedCols=0
g.FixedRows=1

for z=0 to g.Cols - 1
      g.TextMatrix(0, z) = "Column #" & z
      g.ColAlignment(z) = flexAlignRightCenter
      g.ColWidth(z) = 2000      
next
'g.width = g.ColWidth(0) + g.ColWidth(1) + g.ColWidth(2) + g.ColWidth(3) + g.ColWidth(4) + g.ColWidth(5)


      for z = g.FixedRows to g.Rows - 1
            for w = g.FixedCols to g.Cols - 1
                  g.TextMatrix(z, w) = retVar(w, z)

            next
      next
</SCRIPT>
0
Comment
Question by:Matt_Unsworth
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 9

Expert Comment

by:fz2hqs
ID: 9873110
"Then creating an array to populate an MSFlexGrid" - not in ths code snippet, there is no creating
0
 

Author Comment

by:Matt_Unsworth
ID: 9873136
Good point, the array is created in the previous page and passed to this page as a string.

The value retvar contains what I want but the problem still stands of populating g, any ideas how I can do this.

I think that g does not exist when I try to populate it in the code above, how can I get around this.

Matt.
0
 
LVL 9

Accepted Solution

by:
fz2hqs earned 2000 total points
ID: 9873150
If the object is created in the last page, then it is also destroyed at the end of execution of the last page. You need quite simply to create G within this page you can pass values in string form but you will have to create it here

PS - You may want to avoid naming variables like you do, it is far easier for everybody (yourself included) if you try naming things like intLoopCount, grdMyFlexiGrid  - a's b's and z's are meaningless and make reading code difficult
0

Featured Post

Will your db performance match your db growth?

In Percona’s white paper “Performance at Scale: Keeping Your Database on Its Toes,” we take a high-level approach to what you need to think about when planning for database scalability.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A web service (http://en.wikipedia.org/wiki/Web_service) is a software related technology that facilitates machine-to-machine interaction over a network. This article helps beginners in creating and consuming a web service using the ColdFusion Ma…
Article by: kevp75
Hey folks, 'bout time for me to come around with a little tip. Thanks to IIS 7.5 Extensions and Microsoft (well... really Windows 8, and IIS 8 I guess...), we can now prime our Application Pools, when IIS starts. Now, though it would be nice t…
In this brief tutorial Pawel from AdRem Software explains how you can quickly find out which services are running on your network, or what are the IP addresses of servers responsible for each service. Software used is freeware NetCrunch Tools (https…
In this video, Percona Solution Engineer Rick Golba discuss how (and why) you implement high availability in a database environment. To discuss how Percona Consulting can help with your design and architecture needs for your database and infrastr…
Suggested Courses

688 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question