PeterWallace
Programmer
I do not get all data I need
I have three tables
1> PARKS
PNO Long
KnownAs String * 40
ADDRESS String * 50
2> UNITS
UNO Long
PNO Long
LNO Long
RENT Double
BookingStart Date
BookingEnd Date
3> OWNERS
LNO Long
THENAME String * 50
ADDRESS String * 50
PNO in PARKS related PNO in UNITS
LNO in UNITS related LNO in OWNERS
What I need is to fill as MsFlexgrid with data e.g
Book
PNO KnownAs ADDRESS UNO RENT From To OWNER LNO
1 Cukooland 1 red 1 234.00 12/9/05 15/9/05 J Blow 3
1 Cukooland 1 red 2 234.00 14/9/05 19/9/05 J Blow 3
1 Cukooland 1 red 3 234.00 16/9/05 16/9/05 S Hard 4
2 SwanLake 4 Blue 1 134.00 13/9/05 16/9/05 J Blow 3
2 SwanLake 4 Blue 2 154.00 11/9/05 13/9/05 S Hard 4
2 SwanLake 4 Blue 2 144.00 17/9/05 22/9/05 D Ts 1
3 LilyPond 1 Green 1 305.00 10/9/05 26/9/05 D Ts 1
BUT I DO NOT GET OWNER NAME Field on Database
Code so far
' Have used * in sample save type individual fields
' as there are lot more fields in these tables
'
Option Explicit
Dim WithEvents adoPrimaryRS As Recordset
Attribute adoPrimaryRS.VB_VarHelpID = -1
Dim db As Connection
Dim sql As String
Dim MsgString As String
SUB Form_load
.
.
.
LoadGrid
.
.
.
end sub
SUB LoadGrid
MSFlexGrid1.Clear
MSFlexGrid1.Visible = False
Set db = New Connection
db.CursorLocation = adUseClient
db.Open "PROVIDER=MSDataShape;Data PROVIDER=Microsoft.Jet.OLEDB.4.0;_
DataSource=C:\Holiday\Holiday.mdb;"
Set adoPrimaryRS = New Recordset
SQL = "SHAPE {SELECT * FROM PARKS ORDER BY Pno} "
SQL = SQL & "APPEND("
SQL = SQL & "("
SQL = SQL & "SHAPE {SELECT * FROM UNITS ORDER BY Uno} AS TheUnits "
SQL = SQL & "APPEND ("
SQL = SQL & "{SELECT * FROM OWNERS ORDER BY Lno} AS TheOwners "
SQL = SQL & "RELATE LNO TO Lno)"
SQL = SQL & ") "
SQL = SQL & "RELATE Pno TO Pno"
SQL = SQL & ")"
adoPrimaryRS.Open sql, db, adOpenStatic, adLockOptimistic
MSFlexGrid1.DataSource = adoPrimaryRS
MSFlexGrid1.Visible = True
End Sub
I have three tables
1> PARKS
PNO Long
KnownAs String * 40
ADDRESS String * 50
2> UNITS
UNO Long
PNO Long
LNO Long
RENT Double
BookingStart Date
BookingEnd Date
3> OWNERS
LNO Long
THENAME String * 50
ADDRESS String * 50
PNO in PARKS related PNO in UNITS
LNO in UNITS related LNO in OWNERS
What I need is to fill as MsFlexgrid with data e.g
Book
PNO KnownAs ADDRESS UNO RENT From To OWNER LNO
1 Cukooland 1 red 1 234.00 12/9/05 15/9/05 J Blow 3
1 Cukooland 1 red 2 234.00 14/9/05 19/9/05 J Blow 3
1 Cukooland 1 red 3 234.00 16/9/05 16/9/05 S Hard 4
2 SwanLake 4 Blue 1 134.00 13/9/05 16/9/05 J Blow 3
2 SwanLake 4 Blue 2 154.00 11/9/05 13/9/05 S Hard 4
2 SwanLake 4 Blue 2 144.00 17/9/05 22/9/05 D Ts 1
3 LilyPond 1 Green 1 305.00 10/9/05 26/9/05 D Ts 1
BUT I DO NOT GET OWNER NAME Field on Database
Code so far
' Have used * in sample save type individual fields
' as there are lot more fields in these tables
'
Option Explicit
Dim WithEvents adoPrimaryRS As Recordset
Attribute adoPrimaryRS.VB_VarHelpID = -1
Dim db As Connection
Dim sql As String
Dim MsgString As String
SUB Form_load
.
.
.
LoadGrid
.
.
.
end sub
SUB LoadGrid
MSFlexGrid1.Clear
MSFlexGrid1.Visible = False
Set db = New Connection
db.CursorLocation = adUseClient
db.Open "PROVIDER=MSDataShape;Data PROVIDER=Microsoft.Jet.OLEDB.4.0;_
DataSource=C:\Holiday\Holiday.mdb;"
Set adoPrimaryRS = New Recordset
SQL = "SHAPE {SELECT * FROM PARKS ORDER BY Pno} "
SQL = SQL & "APPEND("
SQL = SQL & "("
SQL = SQL & "SHAPE {SELECT * FROM UNITS ORDER BY Uno} AS TheUnits "
SQL = SQL & "APPEND ("
SQL = SQL & "{SELECT * FROM OWNERS ORDER BY Lno} AS TheOwners "
SQL = SQL & "RELATE LNO TO Lno)"
SQL = SQL & ") "
SQL = SQL & "RELATE Pno TO Pno"
SQL = SQL & ")"
adoPrimaryRS.Open sql, db, adOpenStatic, adLockOptimistic
MSFlexGrid1.DataSource = adoPrimaryRS
MSFlexGrid1.Visible = True
End Sub