powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Создание отчетов в одной форме -мастер отчетов
12 сообщений из 12, страница 1 из 1
Создание отчетов в одной форме -мастер отчетов
    #39612087
_СергейВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго вечера всем. Подскажите идею реализации следующего:
Есть много отчетов, вызываемых с помощью пунктов меню. Возникла мысль создать одну форму формирования отчетов, что-то типа конструктора отчетов. Что посоветуете? Есть ли примеры?
Спасибо.
...
Рейтинг: 0 / 0
Создание отчетов в одной форме -мастер отчетов
    #39612102
4z4r
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_СергейВПЕсть много отчетовв чём разница между ними?
...
Рейтинг: 0 / 0
Создание отчетов в одной форме -мастер отчетов
    #39612141
_СергейВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
4z4r,

Разница в текстах запросов и форматировании ячеекм(вывожу в Excel).
...
Рейтинг: 0 / 0
Создание отчетов в одной форме -мастер отчетов
    #39612154
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_СергейВПДоброго вечера всем. Подскажите идею реализации следующего:
Есть много отчетов, вызываемых с помощью пунктов меню. Возникла мысль создать одну форму формирования отчетов, что-то типа конструктора отчетов. Что посоветуете? Есть ли примеры?
Спасибо.
в одной из задач сделала ленточную форму с дюжиной полей для динамического формирования фильтра
+список , в который занесены имена отчетов(почти 30), причем список формируется согласно допуску пользователя(имена отчетов в таблице +группа доступа)

при клике на списке --формирование отчета с выводом в WORD/EXCEL
...
Рейтинг: 0 / 0
Создание отчетов в одной форме -мастер отчетов
    #39612203
alecko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
создаете шаблон отчетов. в нем прописывается пара строк, а остальное формирование уже идет в модуле класса
пример когда на основе одного шаблона формируются 4 совершенно различных отчета, с различной ориентацией (книжной, альбомной) и пр.
в вызывающем модуле прописываете значение глобальной переменной
например пусть: ActNedovlojeniyaTemp(2)=3
ActNedovlojeniyaTemp(1)-это кнтрлсорсе отчета- тоже прописываете в вызывающем модуле.
в отчете прописываете что-то типа:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Private rpttoclacc As mcReportst0AnyCommon
Private Sub Report_Open(cancel As Integer)

    Set rpttoclacc = New mcReportst0AnyCommon
    Set rpttoclacc.ReportProtokol = Me

End Sub


а в затем в модуле класса:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
Private WithEvents mcrptProtokol As Report
Private WithEvents mcrptSverka As Report
Private WithEvents mcrptPodp As Report
Private mcReportsSverkas As Qutas
 Enum Qutas
    Protokol
    Sverka
    Podpiska
    SvodReport
End Enum

Private Sub Class_Initialize()
vids
End Sub
Private Sub vids()
Select Case ActNedovlojeniyaTemp(2)
    Case 1
        mcReportsSverkas = Protokol
        reportsiorce = vbNullString
    Case 2
        mcReportsSverkas = Sverka
        reportsiorce = ActNedovlojeniyaTemp(1)
    Case 3
        mcReportsSverkas = Podpiska
        reportsiorce = ActNedovlojeniyaTemp(1)
    Case 4
         mcReportsSverkas = SvodReport
        reportsiorce = ActNedovlojeniyaTemp(1)
End Select
End Sub
Public Property Set ReportProtokol(ByVal rpt3 As Report)
Select Case mcReportsSverkas
Case Protokol
    Set mcrptProtokol = rpt3
    PrisvProtokol

Case Sverka
        Set mcrptSverka = rpt3
        PrisvSverka

Case Podpiska
         Set mcrptPodp = rpt3
         PrisvPodpiska
         changecolors = True
Case SvodReport
        Set mcrptSvod = rpt3
        PrisvSVOD
End Select
End Property


в таком случае все можно менять(в отличие от вызова отчета как модуль класса), НО отчет можно вызвать только один, если отчет вызывать как модуль класса, то вызывать очевидно их можно несколько- однако Report_Open в этом случае недоступно, а основная масса структурных изменений может быть сделана только в этом событии.
в этих всех PrisvProtokol и пр.
происходит форматирование частей отчета, присваивание событий.
например:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
Private WithEvents PtDetail As [_SectionInReport]
Private WithEvents PtHeader As [_PageHdrFtrInReport]
Private WithEvents PtFooter As [_SectionInReport]
Private WithEvents PdDetail As [_SectionInReport]
Private WithEvents PdHeader As [_SectionInReport]


Private Sub PrisvProtokol()
mcrptProtokol.Caption = "Протокол ревизии"
    mcrptProtokol.OnLoad = DoProg
Set PtDetail = mcrptProtokol.ОбластьДанных
    PtDetail.OnPrint = DoProg
Set PtHeader = mcrptProtokol.Section(acPageHeader)
    PtHeader.OnFormat = DoProg
Set PtFooter = mcrptProtokol.ПримечаниеОтчета
    PtFooter.OnFormat = DoProg
    PtFooter.OnPrint = DoProg
End Sub
Private Sub PrisvPodpiska()
mcrptPodpLoad' прописывается то, что обычно прописывается в Report_open
Set PdHeader = mcrptPodp.Section(acHeader)
PdHeader.OnFormat = DoProg
Set PdDetail = mcrptPodp.ОбластьДанных
    PdDetail.OnFormat = DoProg
    PdDetail.OnPrint = DoProg
End Sub


также implements никто не отменял-но она плодит просто тучу модулей класса.
все это можно написать и в модуле отчета.
естественно это не все что нужно прописывать, но принцип я думаю понятен.
...
Рейтинг: 0 / 0
Создание отчетов в одной форме -мастер отчетов
    #39612237
_СергейВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА,
Да, что-то подобное в голове крутится.
Выделить основные поля, по которым происходит выборка.
Хочется еще иметь возможность указывать ширину и формат ячеек.
...
Рейтинг: 0 / 0
Создание отчетов в одной форме -мастер отчетов
    #39612238
_СергейВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alecko,
Здесь вы описываете работу с отчетами самого Аксесса. У меня отчеты строятся по создаваемому программно запросу с выводом в Ексел.
...
Рейтинг: 0 / 0
Создание отчетов в одной форме -мастер отчетов
    #39612304
alecko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_СергейВПЕсть много отчетов,
много отчетов можно создать в одном отчете-шаблоне.
...
Рейтинг: 0 / 0
Создание отчетов в одной форме -мастер отчетов
    #39612490
_СергейВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА_СергейВПДоброго вечера всем. Подскажите идею реализации следующего:
Есть много отчетов, вызываемых с помощью пунктов меню. Возникла мысль создать одну форму формирования отчетов, что-то типа конструктора отчетов. Что посоветуете? Есть ли примеры?
Спасибо.
в одной из задач сделала ленточную форму с дюжиной полей для динамического формирования фильтра
+список , в который занесены имена отчетов(почти 30), причем список формируется согласно допуску пользователя(имена отчетов в таблице +группа доступа)

при клике на списке --формирование отчета с выводом в WORD/EXCEL

Можете приложить скрин формы?
...
Рейтинг: 0 / 0
Создание отчетов в одной форме -мастер отчетов
    #39612508
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_СергейВП,

часть формы
...
Рейтинг: 0 / 0
Создание отчетов в одной форме -мастер отчетов
    #39612514
_СергейВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА,
Спасибо, посмотрю, что можно взять.
...
Рейтинг: 0 / 0
Создание отчетов в одной форме -мастер отчетов
    #39612518
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_СергейВП,

главное, что состав списка (справа) зависит от того, кто загрузил форму(права доступа при авторизации)
--и достаточно компактно
--и нет скрытых кнопок/вкладок.....
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Создание отчетов в одной форме -мастер отчетов
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]