84 |
sizer.AddGrowableCol(1) |
sizer.AddGrowableCol(1) |
85 |
sizer.AddGrowableCol(3) |
sizer.AddGrowableCol(3) |
86 |
|
|
87 |
topBox.Add(sizer, 1, wxEXPAND|wxALL, 4) |
topBox.Add(sizer, 0, wxEXPAND|wxALL, 4) |
88 |
|
|
89 |
sizer = wxBoxSizer(wxHORIZONTAL) |
sizer = wxBoxSizer(wxHORIZONTAL) |
90 |
sizer.Add(self.button_join, 0, wxEXPAND|wxRIGHT, 10) |
self.check_outer_join = wxCheckBox(self,-1, |
91 |
sizer.Add(self.button_close, 0, wxEXPAND|wxRIGHT, 10) |
_("Outer Join (preserves left table records)")) |
92 |
|
sizer.Add(self.check_outer_join, 1, wxALL,4) |
93 |
|
topBox.Add(sizer, 0, wxALIGN_LEFT|wxALIGN_TOP, 4) |
94 |
|
|
95 |
topBox.Add(sizer, 0, wxALIGN_RIGHT|wxBOTTOM|wxTOP, 10) |
sizer = wxBoxSizer(wxHORIZONTAL) |
96 |
|
sizer.Add(self.button_join, 0, wxALIGN_RIGHT|wxALIGN_BOTTOM|wxRIGHT, 10) |
97 |
|
sizer.Add(self.button_close, 0, wxALIGN_RIGHT|wxALIGN_BOTTOM|wxRIGHT, 10) |
98 |
|
|
99 |
|
topBox.Add(sizer, 1, wxALIGN_RIGHT|wxALIGN_BOTTOM|wxBOTTOM|wxTOP, 10) |
100 |
|
|
101 |
self.SetAutoLayout(True) |
self.SetAutoLayout(True) |
102 |
self.SetSizer(topBox) |
self.SetSizer(topBox) |
123 |
i = self.choice_right_field.GetSelection() |
i = self.choice_right_field.GetSelection() |
124 |
right_field = self.choice_right_field.GetString(i) |
right_field = self.choice_right_field.GetString(i) |
125 |
|
|
126 |
|
outer_join = self.check_outer_join.IsChecked() |
127 |
|
|
128 |
result = True |
result = True |
129 |
try: |
try: |
130 |
joined_table = TransientJoinedTable(self.db, left_table, left_field, |
joined_table = TransientJoinedTable(self.db, |
131 |
right_table, right_field) |
left_table, left_field, |
132 |
|
right_table, right_field, |
133 |
|
outer_join) |
134 |
except: |
except: |
135 |
dlg = wxMessageDialog(None, 'Join failed:\n %s'%sys.exc_info()[1], |
dlg = wxMessageDialog(None, 'Join failed:\n %s'%sys.exc_info()[1], |
136 |
'Info',wxOK|wxICON_ERROR) |
'Info',wxOK|wxICON_ERROR) |