Табличный вид составной формы при наличии двух подчиненных

Smic
Дата: 10.09.2005 13:09:16
Каким образом сделать так, что бы в табличном виде составной формы при наличии двух подчиненных отображалось два столбца "с крестиком", по одному на каждую подчиненную форму?
aleks2
Дата: 10.09.2005 19:17:10
Smic
Каким образом сделать так, что бы в табличном виде составной формы при наличии двух подчиненных отображалось два столбца "с крестиком", по одному на каждую подчиненную форму?


Никак. Можно только сделать столбец-переключатель для подчиненной формы и включать нужную - хоть дюжину форм.
Smic
Дата: 10.09.2005 20:18:07
aleks2
Никак. Можно только сделать столбец-переключатель для подчиненной формы и включать нужную - хоть дюжину форм.
Спасибо. "Столбец-переключатель" - что за зверь? Это элемент управления формы? Если да, то какой, главной или подчиненной.
NG
Дата: 11.09.2005 00:43:49
Я в такой ситуации использую форму-контейнер, не имеющую источника записей. В нее помещаю табличные главную+подчиненные, поле со списком для выбора подчиненной формы и кнопку для свертывания/развертывания подчиненной формы. На Событие Изменение ПоляСоСписком вешаю код:
        Select Case ПолеСоСписком
            Case "Отсутствует"
                !Подформа.SourceObject = ""
                Me!Кнопка_Детализация.Enabled = False
            Case "Подформа 1"
                !Подформа.SourceObject = "Подформа1"
                !Подформа.LinkMasterFields = "ГлавноеПоле1"
                !Подформа.LinkChildFields = "ПодчиненноеПоле1"
                Me!Кнопка_Детализация.Enabled = True
            Case "Подформа 2"
                !Подформа.SourceObject = "Подформа2"
                !Подформа.LinkMasterFields = "ГлавноеПоле2"
                !Подформа.LinkChildFields = "ПодчиненноеПоле2"
                .SubdatasheetExpanded = IsExpanded
                Me!Кнопка_Детализация.Enabled = True
            ...
        End Select
На кнопку:
    With Me!ГлавнаяФорма.Form
        .SubdatasheetExpanded = Not .SubdatasheetExpanded
    End With
End Sub
Пробуйте!
aleks2
Дата: 11.09.2005 19:32:21
NG
Я в такой ситуации использую форму-контейнер, не имеющую источника записей. В нее помещаю табличные главную+подчиненные, поле со списком для выбора подчиненной формы и кнопку для свертывания/развертывания подчиненной формы. На Событие Изменение ПоляСоСписком вешаю код:
        Select Case ПолеСоСписком
            Case "Отсутствует"
                !Подформа.SourceObject = ""
                Me!Кнопка_Детализация.Enabled = False
            Case "Подформа 1"
                !Подформа.SourceObject = "Подформа1"
                !Подформа.LinkMasterFields = "ГлавноеПоле1"
                !Подформа.LinkChildFields = "ПодчиненноеПоле1"
                Me!Кнопка_Детализация.Enabled = True
            Case "Подформа 2"
                !Подформа.SourceObject = "Подформа2"
                !Подформа.LinkMasterFields = "ГлавноеПоле2"
                !Подформа.LinkChildFields = "ПодчиненноеПоле2"
                .SubdatasheetExpanded = IsExpanded
                Me!Кнопка_Детализация.Enabled = True
            ...
        End Select
На кнопку:
    With Me!ГлавнаяФорма.Form
        .SubdatasheetExpanded = Not .SubdatasheetExpanded
    End With
End Sub
Пробуйте!


В принцЫпе тов. излагает верно, только доп. субформа особо не нужна, равно как и кнопка...

>>Спасибо. "Столбец-переключатель" - что за зверь?
Любой контрол - лучше всего список.

>>Это элемент управления формы?
Конечно.

>>Если да, то какой, главной или подчиненной.
Вестимо главной. На его событие ПослеОбновления вешаешь код типа приведенного NG. Если субформы используют одни и те же поля, то
                !Подформа.LinkMasterFields = "ГлавноеПоле1"
                !Подформа.LinkChildFields = "ПодчиненноеПоле1"
можно опустить, задав стационарно.

   Select Case ПолеСоСписком
            Case "Отсутствует"
                !Подформа.SourceObject = ""
            Case "Подформа 1"
                !Подформа.SourceObject = "Подформа1"
                !Подформа.LinkMasterFields = "ГлавноеПоле1"
                !Подформа.LinkChildFields = "ПодчиненноеПоле1"
            Case "Подформа 2"
                !Подформа.SourceObject = "Подформа2"
                !Подформа.LinkMasterFields = "ГлавноеПоле2"
                !Подформа.LinkChildFields = "ПодчиненноеПоле2"
            ...
        End Select
[/SRC]