473,657 Members | 2,624 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Listbox works and then it doesn't

I have an app in which users are displayed a list of mutual fund from which
they can choose. There is a listbox embedded in a two-tabbed notebook
control. When the form is initally opened, the listbox loads info:

Private Sub Form_Open(Cance l As Integer)
TabControl.Valu e = 0
Tab_Label1.Capt ion = "Select Alternatives from the Select List"
FundAlternative sList.RowSource = "Load_Select_Al ternatives_Form "
Call Highlight_Defau lts
End Sub

The RowSource "Load_Select_Al ternatives_Form " is a query that populates the
listbox. Then I have this sub to change the values displayed depending upon
which tab is selected:

Sub TabControl_Chan ge()
If TabControl.Valu e = 0 Then
FundAlternative sList.RowSource = "Load_Select_Al ternatives_Form "
FundAlternative sList.ColumnCou nt = 3
Tab_Label1.Capt ion = "Select Alternatives from the Select List"
Call Highlight_Defau lts
Else
FundAlternative sList.RowSource = "Select_Gap_Fun ds"
FundAlternative sList.ColumnCou nt = 1
Tab_Label1.Capt ion = "Select Alternatives from the Revenue Sharing
List"
End If
End Sub

This works fine too. But the whole point of the two tabs is to allow one to
choose funds from two different sources. If someone is on tab #1 and clicks
a button to run a sub based on the funds that are selected, that sub works
fine. But if they then click on tab #2 immediately after that is finished
running, the listbox is empty.

Reclicking on tab1 and then tab2 refreshes it properly, but that is not the
way it is supposed to work. I have stepped through the code and watched it
go right through the command that should refresh the data, but nothing
happens.

Can anyone tell me why this is occurring?
Nov 12 '05 #1
7 2005
After setting/changing the rowsource of the listbox/combo box try requerying
it (i.e.. Me.mylistbox.Re query)

--
Reggie

www.smittysinet.com
----------
"Colleyvill e Alan" <ae***********@ nospam.comcast. net> wrote in message
news:MXBoc.3651 1$z06.5767180@a ttbi_s01...
I have an app in which users are displayed a list of mutual fund from which they can choose. There is a listbox embedded in a two-tabbed notebook
control. When the form is initally opened, the listbox loads info:

Private Sub Form_Open(Cance l As Integer)
TabControl.Valu e = 0
Tab_Label1.Capt ion = "Select Alternatives from the Select List"
FundAlternative sList.RowSource = "Load_Select_Al ternatives_Form "
Call Highlight_Defau lts
End Sub

The RowSource "Load_Select_Al ternatives_Form " is a query that populates the listbox. Then I have this sub to change the values displayed depending upon which tab is selected:

Sub TabControl_Chan ge()
If TabControl.Valu e = 0 Then
FundAlternative sList.RowSource = "Load_Select_Al ternatives_Form "
FundAlternative sList.ColumnCou nt = 3
Tab_Label1.Capt ion = "Select Alternatives from the Select List"
Call Highlight_Defau lts
Else
FundAlternative sList.RowSource = "Select_Gap_Fun ds"
FundAlternative sList.ColumnCou nt = 1
Tab_Label1.Capt ion = "Select Alternatives from the Revenue Sharing
List"
End If
End Sub

This works fine too. But the whole point of the two tabs is to allow one to choose funds from two different sources. If someone is on tab #1 and clicks a button to run a sub based on the funds that are selected, that sub works
fine. But if they then click on tab #2 immediately after that is finished
running, the listbox is empty.

Reclicking on tab1 and then tab2 refreshes it properly, but that is not the way it is supposed to work. I have stepped through the code and watched it go right through the command that should refresh the data, but nothing
happens.

Can anyone tell me why this is occurring?

Nov 12 '05 #2
> After setting/changing the rowsource of the listbox/combo box try
requerying
it (i.e.. Me.mylistbox.Re query)
And if that doesn't work, refresh the count:

v = me.mylistbox.Li stCount

Getting the count actually forces it to collect all of the rows, like
MoveLast.

(david)
"Reggie" <no**********@s mittysinet.com> wrote in message
news:jv******** ************@co mcast.com... After setting/changing the rowsource of the listbox/combo box try requerying it (i.e.. Me.mylistbox.Re query)

--
Reggie

www.smittysinet.com
----------
"Colleyvill e Alan" <ae***********@ nospam.comcast. net> wrote in message
news:MXBoc.3651 1$z06.5767180@a ttbi_s01...
I have an app in which users are displayed a list of mutual fund from which
they can choose. There is a listbox embedded in a two-tabbed notebook
control. When the form is initally opened, the listbox loads info:

Private Sub Form_Open(Cance l As Integer)
TabControl.Valu e = 0
Tab_Label1.Capt ion = "Select Alternatives from the Select List"
FundAlternative sList.RowSource = "Load_Select_Al ternatives_Form "
Call Highlight_Defau lts
End Sub

The RowSource "Load_Select_Al ternatives_Form " is a query that populates

the
listbox. Then I have this sub to change the values displayed depending

upon
which tab is selected:

Sub TabControl_Chan ge()
If TabControl.Valu e = 0 Then
FundAlternative sList.RowSource = "Load_Select_Al ternatives_Form "
FundAlternative sList.ColumnCou nt = 3
Tab_Label1.Capt ion = "Select Alternatives from the Select List"
Call Highlight_Defau lts
Else
FundAlternative sList.RowSource = "Select_Gap_Fun ds"
FundAlternative sList.ColumnCou nt = 1
Tab_Label1.Capt ion = "Select Alternatives from the Revenue Sharing List"
End If
End Sub

This works fine too. But the whole point of the two tabs is to allow one to
choose funds from two different sources. If someone is on tab #1 and

clicks
a button to run a sub based on the funds that are selected, that sub

works fine. But if they then click on tab #2 immediately after that is finished running, the listbox is empty.

Reclicking on tab1 and then tab2 refreshes it properly, but that is not

the
way it is supposed to work. I have stepped through the code and watched

it
go right through the command that should refresh the data, but nothing
happens.

Can anyone tell me why this is occurring?


Nov 12 '05 #3
"david epsom dot com dot au" <david@epsomdot comdotau> wrote in message
news:40******** **************@ news.syd.swiftd sl.com.au...
After setting/changing the rowsource of the listbox/combo box try

requerying
it (i.e.. Me.mylistbox.Re query)


And if that doesn't work, refresh the count:

v = me.mylistbox.Li stCount

Getting the count actually forces it to collect all of the rows, like
MoveLast.

(david)
"Reggie" <no**********@s mittysinet.com> wrote in message
news:jv******** ************@co mcast.com...
After setting/changing the rowsource of the listbox/combo box try

requerying
it (i.e.. Me.mylistbox.Re query)

--
Reggie

Thanks for the try, but neither solution worked. The listbox goes blank
when it hits the line:
FundAlternative sList.RowSource = "Select_Gap_Fun ds"

That is the same line of code that works when the box is first opened and
the user clicks on the tab. It also works after the box goes blank on that
command but then the first tab is clicked and the second tab is clicked once
again.

But while stepping through the code, I noticed that the block of code for
the first tab:
If TabControl.Valu e = 0 Then
FundAlternative sList.RowSource = "Load_Select_Al ternatives_Form " FundAlternative sList.ColumnCou nt = 3
Tab_Label1.Capt ion = "Select Alternatives from the Select List" Call Highlight_Defau lts
Also set the listbox blank (almost) and that my sub Highlight_Defau lts
(which selects funds that were highlighted on a spreadsheet) was what reset
the listbox. When I said it almost sets the box blank - once column is
displayed even though there are three columns. In fact, the third column is
the only one showing. I see that my code sets the ColumnCount to 3, and
that is what I want - 3 columns to show. But not column #3 in the first
position! And after the call to Highlight_Defau lts, the ColumnCount
actually is 3 with each field in the correct position.

Does this sound like a familiar problem? It sure seems that there is
something odd here!

BTW, I tried using each command separately and together both before and
after setting the rowsource property.

www.smittysinet.com
----------
"Colleyvill e Alan" <ae***********@ nospam.comcast. net> wrote in message
news:MXBoc.3651 1$z06.5767180@a ttbi_s01...
I have an app in which users are displayed a list of mutual fund from

which
they can choose. There is a listbox embedded in a two-tabbed notebook
control. When the form is initally opened, the listbox loads info:

Private Sub Form_Open(Cance l As Integer)
TabControl.Valu e = 0
Tab_Label1.Capt ion = "Select Alternatives from the Select List"
FundAlternative sList.RowSource = "Load_Select_Al ternatives_Form "
Call Highlight_Defau lts
End Sub

The RowSource "Load_Select_Al ternatives_Form " is a query that
populates
the
listbox. Then I have this sub to change the values displayed
depending upon
which tab is selected:

Sub TabControl_Chan ge()
If TabControl.Valu e = 0 Then
FundAlternative sList.RowSource =
"Load_Select_Al ternatives_Form " FundAlternative sList.ColumnCou nt = 3
Tab_Label1.Capt ion = "Select Alternatives from the Select List" Call Highlight_Defau lts
Else
FundAlternative sList.RowSource = "Select_Gap_Fun ds"
FundAlternative sList.ColumnCou nt = 1
Tab_Label1.Capt ion = "Select Alternatives from the Revenue

Sharing List"
End If
End Sub

This works fine too. But the whole point of the two tabs is to allow one
to
choose funds from two different sources. If someone is on tab #1 and

clicks
a button to run a sub based on the funds that are selected, that sub

works fine. But if they then click on tab #2 immediately after that is finished running, the listbox is empty.

Reclicking on tab1 and then tab2 refreshes it properly, but that is

not the
way it is supposed to work. I have stepped through the code and
watched it
go right through the command that should refresh the data, but nothing
happens.

Can anyone tell me why this is occurring?



Nov 12 '05 #4
"Colleyvill e Alan" <ae***********@ nospam.comcast. net> wrote in message
news:OTJoc.3935 0$536.7125415@a ttbi_s03...
Also set the listbox blank (almost) and that my sub Highlight_Defau lts
(which selects funds that were highlighted on a spreadsheet) was what reset the listbox. When I said it almost sets the box blank - once column is
displayed even though there are three columns. In fact, the third column is the only one showing. I see that my code sets the ColumnCount to 3, and
that is what I want - 3 columns to show. But not column #3 in the first
position! And after the call to Highlight_Defau lts, the ColumnCount
actually is 3 with each field in the correct position.

Does this sound like a familiar problem? It sure seems that there is
something odd here!

BTW, I tried using each command separately and together both before and
after setting the rowsource property.


Never mind, I found the problem. It seems that having the line that sets
the ColumnCount:
FundAlternative sList.ColumnCou nt = 1
after the code that sets the RowSource property is the problem. Putting it
before that code executes fixes it.

So this does not work:
Else
FundAlternative sList.RowSource = "Select_Gap_Fun ds"
FundAlternative sList.ColumnCou nt = 1
Tab_Label1.Capt ion = "Select Alternatives ..."
End If

But this does:
Else
FundAlternative sList.ColumnCou nt = 1
FundAlternative sList.RowSource = "Select_Gap_Fun ds"
Tab_Label1.Capt ion = "Select Alternatives ..."
End If

Does anyone know why that is the case? I'm happy to have a solution, but
I'm also trying to understand the logic.
Nov 12 '05 #5
Glad you fixed it. Didn't notice your sequence at first. I believe once
you start changing the properties (column count) it resets the control. If
you think about it, it makes sense. Lets assume your other piece of code
which changes it from 1 column to 3. The first thing you "were" doing was
trying to cram 3 columns of data into a 1 column listbox, then you were
adding the other 2 columns. Not much of an answer, but just trying to
figure it out and this "seems" to be a logical answer.

--
Reggie

www.smittysinet.com
----------
"Colleyvill e Alan" <ae***********@ nospam.comcast. net> wrote in message
news:H0Koc.243$ Dz.58013@attbi_ s52...
"Colleyvill e Alan" <ae***********@ nospam.comcast. net> wrote in message
news:OTJoc.3935 0$536.7125415@a ttbi_s03...
Also set the listbox blank (almost) and that my sub Highlight_Defau lts
(which selects funds that were highlighted on a spreadsheet) was what reset
the listbox. When I said it almost sets the box blank - once column is
displayed even though there are three columns. In fact, the third

column is
the only one showing. I see that my code sets the ColumnCount to 3, and
that is what I want - 3 columns to show. But not column #3 in the first
position! And after the call to Highlight_Defau lts, the ColumnCount
actually is 3 with each field in the correct position.

Does this sound like a familiar problem? It sure seems that there is
something odd here!

BTW, I tried using each command separately and together both before and
after setting the rowsource property.
Never mind, I found the problem. It seems that having the line that sets
the ColumnCount:
FundAlternative sList.ColumnCou nt = 1
after the code that sets the RowSource property is the problem. Putting

it before that code executes fixes it.

So this does not work:
Else
FundAlternative sList.RowSource = "Select_Gap_Fun ds"
FundAlternative sList.ColumnCou nt = 1
Tab_Label1.Capt ion = "Select Alternatives ..."
End If

But this does:
Else
FundAlternative sList.ColumnCou nt = 1
FundAlternative sList.RowSource = "Select_Gap_Fun ds"
Tab_Label1.Capt ion = "Select Alternatives ..."
End If

Does anyone know why that is the case? I'm happy to have a solution, but
I'm also trying to understand the logic.

Nov 12 '05 #6
"Reggie" <no**********@s mittysinet.com> wrote in message
news:Q5******** ************@co mcast.com...
Glad you fixed it. Didn't notice your sequence at first. I believe once
you start changing the properties (column count) it resets the control. If you think about it, it makes sense. Lets assume your other piece of code
which changes it from 1 column to 3. The first thing you "were" doing was
trying to cram 3 columns of data into a 1 column listbox, then you were
adding the other 2 columns. Not much of an answer, but just trying to
figure it out and this "seems" to be a logical answer.
Well I thought it worked - sometimes it does and sometimes it does not.
I've stepped through the code and the correct lines are being executed, the
variables are being set. But they simply do not seem to affect anything. I
have to re-write this section anyway, so I may not have this problem when I
am done. But for now, it seems intermittent, though there is probably an
underlying pattern that I am missing.

CA

--
Reggie

www.smittysinet.com
----------
"Colleyvill e Alan" <ae***********@ nospam.comcast. net> wrote in message
news:H0Koc.243$ Dz.58013@attbi_ s52...
"Colleyvill e Alan" <ae***********@ nospam.comcast. net> wrote in message
news:OTJoc.3935 0$536.7125415@a ttbi_s03...
Also set the listbox blank (almost) and that my sub Highlight_Defau lts
(which selects funds that were highlighted on a spreadsheet) was what

reset
the listbox. When I said it almost sets the box blank - once column is displayed even though there are three columns. In fact, the third column
is
the only one showing. I see that my code sets the ColumnCount to 3, and that is what I want - 3 columns to show. But not column #3 in the first position! And after the call to Highlight_Defau lts, the ColumnCount
actually is 3 with each field in the correct position.

Does this sound like a familiar problem? It sure seems that there is
something odd here!

BTW, I tried using each command separately and together both before and after setting the rowsource property.


Never mind, I found the problem. It seems that having the line that

sets the ColumnCount:
FundAlternative sList.ColumnCou nt = 1
after the code that sets the RowSource property is the problem. Putting

it
before that code executes fixes it.

So this does not work:
Else
FundAlternative sList.RowSource = "Select_Gap_Fun ds"
FundAlternative sList.ColumnCou nt = 1
Tab_Label1.Capt ion = "Select Alternatives ..."
End If

But this does:
Else
FundAlternative sList.ColumnCou nt = 1
FundAlternative sList.RowSource = "Select_Gap_Fun ds"
Tab_Label1.Capt ion = "Select Alternatives ..."
End If

Does anyone know why that is the case? I'm happy to have a solution, but I'm also trying to understand the logic.


Nov 12 '05 #7
> Well I thought it worked - sometimes it does and sometimes it does not.

Also watch for errors caused by binding to an empty recordset.
As you know, the detail section of a form is not rendered if
the form is bound to an empty recordset: sometimes there are
problems associated with this.

(david)
"Colleyvill e Alan" <ae***********@ nospam.comcast. net> wrote in message
news:Zt3pc.4762 8$z06.6823157@a ttbi_s01...
"Reggie" <no**********@s mittysinet.com> wrote in message
news:Q5******** ************@co mcast.com...
Glad you fixed it. Didn't notice your sequence at first. I believe once
you start changing the properties (column count) it resets the control. If
you think about it, it makes sense. Lets assume your other piece of code
which changes it from 1 column to 3. The first thing you "were" doing was trying to cram 3 columns of data into a 1 column listbox, then you were
adding the other 2 columns. Not much of an answer, but just trying to
figure it out and this "seems" to be a logical answer.


Well I thought it worked - sometimes it does and sometimes it does not.
I've stepped through the code and the correct lines are being executed,

the variables are being set. But they simply do not seem to affect anything. I have to re-write this section anyway, so I may not have this problem when I am done. But for now, it seems intermittent, though there is probably an
underlying pattern that I am missing.

CA

--
Reggie

www.smittysinet.com
----------
"Colleyvill e Alan" <ae***********@ nospam.comcast. net> wrote in message
news:H0Koc.243$ Dz.58013@attbi_ s52...
"Colleyvill e Alan" <ae***********@ nospam.comcast. net> wrote in message
news:OTJoc.3935 0$536.7125415@a ttbi_s03...
> Also set the listbox blank (almost) and that my sub Highlight_Defau lts > (which selects funds that were highlighted on a spreadsheet) was what reset
> the listbox. When I said it almost sets the box blank - once column is > displayed even though there are three columns. In fact, the third

column
is
> the only one showing. I see that my code sets the ColumnCount to 3, and > that is what I want - 3 columns to show. But not column #3 in the first > position! And after the call to Highlight_Defau lts, the ColumnCount
> actually is 3 with each field in the correct position.
>
> Does this sound like a familiar problem? It sure seems that there is > something odd here!
>
> BTW, I tried using each command separately and together both before and > after setting the rowsource property.

Never mind, I found the problem. It seems that having the line that sets the ColumnCount:
FundAlternative sList.ColumnCou nt = 1
after the code that sets the RowSource property is the problem.
Putting it
before that code executes fixes it.

So this does not work:
Else
FundAlternative sList.RowSource = "Select_Gap_Fun ds"
FundAlternative sList.ColumnCou nt = 1
Tab_Label1.Capt ion = "Select Alternatives ..."
End If

But this does:
Else
FundAlternative sList.ColumnCou nt = 1
FundAlternative sList.RowSource = "Select_Gap_Fun ds"
Tab_Label1.Capt ion = "Select Alternatives ..."
End If

Does anyone know why that is the case? I'm happy to have a solution,

but I'm also trying to understand the logic.



Nov 12 '05 #8

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

17
3111
by: amber | last post by:
Hello. Can someone tell me what I may be doing wrong here? I'm using the code (lboxRP is a listbox): Dim newRPindex As Integer newRPindex = Me.lboxRP.FindString(RP) Me.lboxRP.SetSelected(newRPindex, True) When the last line executes, I get an error message:
5
3522
by: Bill | last post by:
I have have two list boxes. One is a listing of all possible variables. We'll call this listbox A. The other is a listing of all the selected variables. We'll call this listbox B. If a person double-clicks on one of the variables in listbox A it "moves" it to listbox B. What is going on behind the scenes is that the table that holds all these variables has a yes/no field call Print. When the user double clicks on the value it fires a...
2
3159
by: Joey | last post by:
Hi There, I am trying to get the selected value of a listbox when I click a button, everything works ok and I can bind the list and when I have a basic page and click a button to invoke a sub it works fine, but when I try to place it in the sub I want to use it give me an eror saying that the "Object reference not set to an instance of an object." I can't understand why it works in a small sub in the same class but then when I try to use...
6
5203
by: Janaka | last post by:
Help! I have two ListBox controls on my web form. The first one gets populated on entry with values from the DB. I then use JavaScript to copy options from this ListBox to my second one. (I have also tried changing the second ListBox to an HtmlSelect control) using bog standard JavaScript code like so where "used" is the name of my <select> control: used.options = new Option(name, typeId); This all works fine and I can move across...
0
1225
by: amber | last post by:
Hello, I'm having problems with a listbox... I have a listbox that is populated when a user presses a button (retrieve). There is a textbox on the form, and if the textbox is left blank, and the user presses the button, all records show in the listbox. If the user enters a specific item into the textbox, then presses the button, only that record shows in the listbox. There are fields on the form which are populated by data associated...
4
322
by: amber | last post by:
Hello I'm not sure if I should give up trying to find an answer here...or just keep posting my problem.. I'm having problems with a listbox.. I have a listbox that is populated when a user presses a button (retrieve). There is a textbox on the form, and if the textbox is left blank, and the user presses the button, all records show in the listbox. If the user enters a specific item into the textbox, then presses the button, only that record...
2
2911
by: teo | last post by:
I have a Listbox, if I set EnableViewStarte = False the AutopostaBack fired by SelectedIndexChanged doesn't work. The 'SelectedIndexChanged' event should call
18
4596
by: Zytan | last post by:
I want the same function to be run whether you press Enter or double click the listbox. It seems really verbose to write both handlers to both events everytime, even if they both call the same function, or one calls the other. Isn't there an event for 'ListBox selection selected' that is automatically called by ALL the standard GUI ways of doing it? C'mon, this is C#, we aren't supposed to be programming the GUI. There has to be such...
15
2361
by: Doogie | last post by:
I have a .net app that a user currently enters a number in a text box, hits a button and a data call is executed. She wants the ability to enter in multiple numbers (up to 100). So to make things look better visually for that, I created a listbox under the text box. She enters the number in the text box, clicks another button I added and the number is stored in the list box. Then my plan was to grab all those numbers from the list box...
0
8746
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
8626
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
6178
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5649
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
4175
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
4334
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
2749
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
1975
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
2
1737
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.