473,385 Members | 1,400 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,385 software developers and data experts.

Using Steven Lebans "A97Save-Restore-Modify-RelationshipWindowLayout" A97

it looks like this will save many versions of a relationship window,
but based on the fact that the same tables are displayed in the
relationship window

and it will restore versions of what was saved as long as all the
tables that were saved are currently shown in the relationship window

so if I have 2 tables, employee and customer
and if I show just the employee table in the relationship window, I can
save it as 'employee'

and I can clear the relationship window and add the table customer and
save it as 'customer'

now if I restore 'employee', since only the business table is in the
relationship window, it does not show the employee table and continues
to just show the business table

in looking at the source, it appears that the restore function does not
create new windows for missing tables in a saved view
delete existing windows for extra tables

I'm just wondering if my interpretation is correct or if I'm missing
something ?

and if my interpretation is correct, I'll see if I can find windows API
to create / delete windows so that I can add this functionality....

I have over 100 tables in my app and I can't fit them all in the
relationship window at a time, and they ability to have multiple
windows, based on functional groupings of tables would be a useful
function

Oct 16 '06 #1
4 1605
Honestly, when I produced that solution, I was so focused on decoding the
RelationShipWindow BLOB that I did not spend enough time with the logic for
displaying the individual RelationShip windows. I agree with you that the
logic should handle the display of whatever number of tables you choose.

The simplest solution would to move the talbles not required off to the edge
of the viewable area. Alternatively, you could restore a RelationShip view
that contains ALL of the requried tables prior to restoring your desired
view.

To supply a solution to your issue, you simply have to extend/modify the
existing logic of rendering the windows. No API's are required. I'd offer to
do it for you but I am currently way behind in my programming to do list. I
will try to help though if you intend to work through this yourself.
--

HTH
Stephen Lebans
http://www.lebans.com
Access Code, Tips and Tricks
Please respond only to the newsgroups so everyone can benefit.
<le*********@natpro.comwrote in message
news:11**********************@i3g2000cwc.googlegro ups.com...
it looks like this will save many versions of a relationship window,
but based on the fact that the same tables are displayed in the
relationship window

and it will restore versions of what was saved as long as all the
tables that were saved are currently shown in the relationship window

so if I have 2 tables, employee and customer
and if I show just the employee table in the relationship window, I can
save it as 'employee'

and I can clear the relationship window and add the table customer and
save it as 'customer'

now if I restore 'employee', since only the business table is in the
relationship window, it does not show the employee table and continues
to just show the business table

in looking at the source, it appears that the restore function does not
create new windows for missing tables in a saved view
delete existing windows for extra tables

I'm just wondering if my interpretation is correct or if I'm missing
something ?

and if my interpretation is correct, I'll see if I can find windows API
to create / delete windows so that I can add this functionality....

I have over 100 tables in my app and I can't fit them all in the
relationship window at a time, and they ability to have multiple
windows, based on functional groupings of tables would be a useful
function

Oct 17 '06 #2
the only reason I'd need APIs would be to create new windows if I don't
start with a view of all tables

or to delete existing windows that aren't part of the saved view

so if my saved view had tblEmployee and tblBusiness
and my current relationship window had tblSupplier, I'd need to delete
one window and create 2 new windows

but for now, I'll try to
select 'all' tables
push the unwanted tables off the edge
Stephen Lebans wrote:
Honestly, when I produced that solution, I was so focused on decoding the
RelationShipWindow BLOB that I did not spend enough time with the logic for
displaying the individual RelationShip windows. I agree with you that the
logic should handle the display of whatever number of tables you choose.

The simplest solution would to move the talbles not required off to the edge
of the viewable area. Alternatively, you could restore a RelationShip view
that contains ALL of the requried tables prior to restoring your desired
view.

To supply a solution to your issue, you simply have to extend/modify the
existing logic of rendering the windows. No API's are required. I'd offer to
do it for you but I am currently way behind in my programming to do list. I
will try to help though if you intend to work through this yourself.
--

HTH
Stephen Lebans
http://www.lebans.com
Access Code, Tips and Tricks
Please respond only to the newsgroups so everyone can benefit.
<le*********@natpro.comwrote in message
news:11**********************@i3g2000cwc.googlegro ups.com...
it looks like this will save many versions of a relationship window,
but based on the fact that the same tables are displayed in the
relationship window

and it will restore versions of what was saved as long as all the
tables that were saved are currently shown in the relationship window

so if I have 2 tables, employee and customer
and if I show just the employee table in the relationship window, I can
save it as 'employee'

and I can clear the relationship window and add the table customer and
save it as 'customer'

now if I restore 'employee', since only the business table is in the
relationship window, it does not show the employee table and continues
to just show the business table

in looking at the source, it appears that the restore function does not
create new windows for missing tables in a saved view
delete existing windows for extra tables

I'm just wondering if my interpretation is correct or if I'm missing
something ?

and if my interpretation is correct, I'll see if I can find windows API
to create / delete windows so that I can add this functionality....

I have over 100 tables in my app and I can't fit them all in the
relationship window at a time, and they ability to have multiple
windows, based on functional groupings of tables would be a useful
function
Oct 18 '06 #3
pushing the unwanted tables off the edge seems to work in display mode
using the changes see, (**********) below

but the print relationship add-in (access97) wants to print 'all'
tables (not just the visible ones), and of course, there's too many
tables, so we exceed the number of controls allowed on a report

so now, I wonder how to delete / close a window, given its handle....
Do While Not rst.EOF
On Error Resume Next
' Get the Window handle by using the Window's Text as the Key
hWndTemp = colWindows.Item(rst.Fields("WinName"))
On Error GoTo 0
If hWndTemp <0 Then
' Copy the window coords into our temp vars
With rst.Fields
X = rst.Fields("X")
X1 = rst.Fields("X1")
Y = rst.Fields("Y")
Y1 = rst.Fields("Y1")
End With

' Move and size the window to its original values
lngRet = SetWindowPos(hWndTemp, 0&, X, Y, X1 - X, Y1 - Y,
SWP_SHOWWINDOW)
******************
colWindows.Remove (rst.Fields("WinName"))
******************
End If

rst.MoveNext
hWndTemp = 0
Loop

*************
For intN = 1 To colWindows.Count
hWndTemp = colWindows.Item(intN)
lngRet = SetWindowPos(hWndTemp, 0&, -1, -1, 0, 0,
SWP_SHOWWINDOW)
hWndTemp = 0
Next intN
*****************

le*********@natpro.com wrote:
the only reason I'd need APIs would be to create new windows if I don't
start with a view of all tables

or to delete existing windows that aren't part of the saved view

so if my saved view had tblEmployee and tblBusiness
and my current relationship window had tblSupplier, I'd need to delete
one window and create 2 new windows

but for now, I'll try to
select 'all' tables
push the unwanted tables off the edge
Stephen Lebans wrote:
Honestly, when I produced that solution, I was so focused on decoding the
RelationShipWindow BLOB that I did not spend enough time with the logic for
displaying the individual RelationShip windows. I agree with you that the
logic should handle the display of whatever number of tables you choose.

The simplest solution would to move the talbles not required off to the edge
of the viewable area. Alternatively, you could restore a RelationShip view
that contains ALL of the requried tables prior to restoring your desired
view.

To supply a solution to your issue, you simply have to extend/modify the
existing logic of rendering the windows. No API's are required. I'd offer to
do it for you but I am currently way behind in my programming to do list. I
will try to help though if you intend to work through this yourself.
--

HTH
Stephen Lebans
http://www.lebans.com
Access Code, Tips and Tricks
Please respond only to the newsgroups so everyone can benefit.
<le*********@natpro.comwrote in message
news:11**********************@i3g2000cwc.googlegro ups.com...
it looks like this will save many versions of a relationship window,
but based on the fact that the same tables are displayed in the
relationship window
>
and it will restore versions of what was saved as long as all the
tables that were saved are currently shown in the relationship window
>
so if I have 2 tables, employee and customer
and if I show just the employee table in the relationship window, I can
save it as 'employee'
>
and I can clear the relationship window and add the table customer and
save it as 'customer'
>
now if I restore 'employee', since only the business table is in the
relationship window, it does not show the employee table and continues
to just show the business table
>
in looking at the source, it appears that the restore function does not
create new windows for missing tables in a saved view
delete existing windows for extra tables
>
I'm just wondering if my interpretation is correct or if I'm missing
something ?
>
and if my interpretation is correct, I'll see if I can find windows API
to create / delete windows so that I can add this functionality....
>
I have over 100 tables in my app and I can't fit them all in the
relationship window at a time, and they ability to have multiple
windows, based on functional groupings of tables would be a useful
function
>
Oct 18 '06 #4
windows can be closed using 'postMessage', and printing works as
expected

Private Declare Function PostMessage Lib "User32" Alias "PostMessageA"
_
(ByVal Hwnd As Long, _
ByVal wMsg As Long, _
ByVal wParam As Long, _
ByVal lParam As Long) As Long

' postMessage() constants
Private Const WM_CLOSE = &H10
with modifications, see (**************)
Do While Not rst.EOF
On Error Resume Next
' Get the Window handle by using the Window's Text as the Key
hWndTemp = colWindows.Item(rst.Fields("WinName"))
On Error GoTo 0
If hWndTemp <0 Then
' Copy the window coords into our temp vars
With rst.Fields
X = rst.Fields("X")
X1 = rst.Fields("X1")
Y = rst.Fields("Y")
Y1 = rst.Fields("Y1")
End With

*vvvvvvvvvv deal with tables we want to see that are off the edge
If (X < 0) Then
X1 = X1 + (100 - X)
X = X + 100 - X
End If

If (Y < 0) Then
Y1 = Y1 + (100 - Y)
Y = Y + 100 - Y
End If
*^^^^^^^^^^
' Move and size the window to its original values
lngRet = SetWindowPos(hWndTemp, 0&, X, Y, X1 - X, Y1 - Y,
SWP_SHOWWINDOW)
*vvvvvvvvvvvv
colWindows.Remove (rst.Fields("WinName"))
*^^^^^^^^^^^^^
End If

rst.MoveNext
hWndTemp = 0
Loop

*vvvvvvvvvvvvvvv
For intN = 1 To colWindows.Count
hWndTemp = colWindows.Item(intN)
lngRet = PostMessage(hWndTemp, WM_CLOSE, 0&, 0&)
hWndTemp = 0
Next intN
*^^^^^^^^^^^^^^^

le*********@natpro.com wrote:
pushing the unwanted tables off the edge seems to work in display mode
using the changes see, (**********) below

but the print relationship add-in (access97) wants to print 'all'
tables (not just the visible ones), and of course, there's too many
tables, so we exceed the number of controls allowed on a report

so now, I wonder how to delete / close a window, given its handle....
Do While Not rst.EOF
On Error Resume Next
' Get the Window handle by using the Window's Text as the Key
hWndTemp = colWindows.Item(rst.Fields("WinName"))
On Error GoTo 0
If hWndTemp <0 Then
' Copy the window coords into our temp vars
With rst.Fields
X = rst.Fields("X")
X1 = rst.Fields("X1")
Y = rst.Fields("Y")
Y1 = rst.Fields("Y1")
End With

' Move and size the window to its original values
lngRet = SetWindowPos(hWndTemp, 0&, X, Y, X1 - X, Y1 - Y,
SWP_SHOWWINDOW)
******************
colWindows.Remove (rst.Fields("WinName"))
******************
End If

rst.MoveNext
hWndTemp = 0
Loop

*************
For intN = 1 To colWindows.Count
hWndTemp = colWindows.Item(intN)
lngRet = SetWindowPos(hWndTemp, 0&, -1, -1, 0, 0,
SWP_SHOWWINDOW)
hWndTemp = 0
Next intN
*****************

le*********@natpro.com wrote:
the only reason I'd need APIs would be to create new windows if I don't
start with a view of all tables

or to delete existing windows that aren't part of the saved view

so if my saved view had tblEmployee and tblBusiness
and my current relationship window had tblSupplier, I'd need to delete
one window and create 2 new windows

but for now, I'll try to
select 'all' tables
push the unwanted tables off the edge
Stephen Lebans wrote:
Honestly, when I produced that solution, I was so focused on decoding the
RelationShipWindow BLOB that I did not spend enough time with the logic for
displaying the individual RelationShip windows. I agree with you that the
logic should handle the display of whatever number of tables you choose.
>
The simplest solution would to move the talbles not required off to the edge
of the viewable area. Alternatively, you could restore a RelationShip view
that contains ALL of the requried tables prior to restoring your desired
view.
>
To supply a solution to your issue, you simply have to extend/modify the
existing logic of rendering the windows. No API's are required. I'd offer to
do it for you but I am currently way behind in my programming to do list. I
will try to help though if you intend to work through this yourself.
>
>
--
>
HTH
Stephen Lebans
http://www.lebans.com
Access Code, Tips and Tricks
Please respond only to the newsgroups so everyone can benefit.
>
>
<le*********@natpro.comwrote in message
news:11**********************@i3g2000cwc.googlegro ups.com...
it looks like this will save many versions of a relationship window,
but based on the fact that the same tables are displayed in the
relationship window

and it will restore versions of what was saved as long as all the
tables that were saved are currently shown in the relationship window

so if I have 2 tables, employee and customer
and if I show just the employee table in the relationship window, I can
save it as 'employee'

and I can clear the relationship window and add the table customer and
save it as 'customer'

now if I restore 'employee', since only the business table is in the
relationship window, it does not show the employee table and continues
to just show the business table

in looking at the source, it appears that the restore function does not
create new windows for missing tables in a saved view
delete existing windows for extra tables

I'm just wondering if my interpretation is correct or if I'm missing
something ?

and if my interpretation is correct, I'll see if I can find windows API
to create / delete windows so that I can add this functionality....

I have over 100 tables in my app and I can't fit them all in the
relationship window at a time, and they ability to have multiple
windows, based on functional groupings of tables would be a useful
function
Oct 18 '06 #5

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

Similar topics

6
by: Bruce Rusk | last post by:
I'm using Stephen Lebans' RTF2 control in a report, and have discovered what may be a slight bug in it. I have a lot of non-Western language (Chinese) text in my RTF field, and such records get...
2
by: Wally | last post by:
Hi All, I'm using Stephan Lebans' nifty code for automatically resizing text fields to the size required to show (almost) all text in that field (CanGrow3, thanks Stephen!). In general this...
4
by: Cameron Laird | last post by:
Hi, I'm using Stephen Lebans RTF control in an unbound Access 2000 form. To populate the control I simply set the RTFtext property to the value of the memo field in the database containing the...
0
by: Robert | last post by:
Stephen, I think I figured out the problem. I was able to get Check Boxes and Option Buttons to work on my form by TURNING OFF RECORD SELECTORS on the form. Not sure why this would make a...
3
by: Rémi | last post by:
Hello all! I've been using Stephen Lebans' MouseWheel stuff for a number of years now, without problems. I've used on different combinations of Access and Windows, and have had great results with...
2
by: penguin732901 | last post by:
Hi Steve, I hope you can help me with this. In Access 97, I'm getting the following error. "The formats that enable you to output data as a Microsoft Excel, rich-text format, MS-DOS text, or...
0
by: Dennis via AccessMonster.com | last post by:
Is there some secret to using multiple Steven Lebans calendar controls on multiple subforms? Specifically I have a form with 2 subforms each with 2 date fields on it. The mousedown event on each of...
3
by: CuriousOne1 | last post by:
Hi all, I don't know if anyone has come accross this before. I've been using Steve Lebans Calendar control (available here: www.lebans.com/monthcalendar.htm ) for several database application...
0
by: Arno R | last post by:
Hi all, I am using/testing the RTF2 Control from Steven Lebans (A2K RTF2 Sample Release 5-5) I would like to only *show* the contents of the control on some screens. So I would like to disable...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 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 former...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...

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.