Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Подотчет без записей д.б. в виде пустографки. / 15 сообщений из 15, страница 1 из 1
09.06.2004, 11:56
    #32553855
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
Здравствуйте.
Не могу придумать простого способа решения проблемы: есть подчиненный отчет, при отсутствии в нем записей, на его основе должна рисоваться сетка на, допустим, 5 пустых строк.
Есть способ сделать это запросом или галками в акцессе, не подменяя на ходу его источник данных?
Понятно объяснил, чи ни?

Как же спать хоцца...
...
Рейтинг: 0 / 0
09.06.2004, 11:58
    #32553861
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
select 1 as one
union all
select 1 as one
union all
select 1 as one
union all
select 1 as one
union all
select 1 as one
...
Рейтинг: 0 / 0
09.06.2004, 11:59
    #32553867
caper
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
положить ДВА подчиненных отчета, один - пустографка и управлять их видимостью...
сработает?
...
Рейтинг: 0 / 0
09.06.2004, 12:01
    #32553874
маяк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
Выдавать отчёт не из таблиц, а из запроса (как вариант - запрос из запроса), в нём смотреть - если записей маловато, то пихать нужное количество пустых строчек.
...
Рейтинг: 0 / 0
09.06.2004, 12:06
    #32553886
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
2 АлексейК
Нет, надо, если
select * from mytable where условие связи с главным отчетом
дает 0 записей, то
select 1 union select 1 ...
иначе из mytable
Причем в конце данных, если они есть, пустые строки не нужны.

2 caper
Программно подменить источник данных не сложнее, + кол-во контролов на отчете меньше + не запутаешься через год, увидев два одинаковых подотчета

2 маяк

Бат хау непрограммно?
...
Рейтинг: 0 / 0
09.06.2004, 12:18
    #32553928
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
вот идейка

1 создаем пустую группу FG даем имя fg

в ней рисуем пустографку
в нее помещаем скрытый контрол recount
=count(*)


на форматирование секции:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub fg_Format(Cancel As Integer, FormatCount As Integer)
On Error Resume Next  ' А ошибка будет при отсутствии данных
 
If Me.recount =  0  Then
 fg.Visible = True
Else
 fg.Visible = False
End If
End Sub
...
Рейтинг: 0 / 0
09.06.2004, 12:43
    #32554002
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
В 2002 я где-то делал похожую штуку, а в 97 ни recordcount, ни recordsetclone нету. Ну это и не важно.

2 АлексейК
Имхо, тогда уж проще все-таки примерно так
private sub областьданных_format
if dcount(me.mysubrep.report.recordsource & " where ключ1=ключ2")=0 then
me.mysubrep.report.recordsource="пустаятаблица"
...
Рейтинг: 0 / 0
09.06.2004, 13:58
    #32554208
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
Блин, пытался найти красивый пример - завалы мой некому отдать "разборку"
И, чудится, что прямую ссылку на правильное место давал, почему-то в голове, что Санычу - и ссылки не нашел.
Ладно - пусть будет некрасивый, но попробуй нижеуказанное - кажется - специально для тебя

1) заводишь пустой отчет без источников и всякой бяки
2) в области данных втавляешь текстовое поле с именем txt1
3) в модуле отчета напиши так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Option Compare Database
Option Explicit

Dim arr()
Dim arPos As Long

Private Sub Report_Open(Cancel As Integer)
  arr = Array("Раз", "Два", "Три")
End Sub

Private Sub ОбластьДанных_Format(Cancel As Integer, FormatCount As Integer)
    Me.txt1 = arr(arpos)
    arPos = arPos +  1 
  
  
  If arPos <= UBound(arr) Then
    Me.NextRecord = False
  End If
End Sub

сетку, думаю, сам добавишь...
...
Рейтинг: 0 / 0
09.06.2004, 14:22
    #32554281
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
2 Victosha
Это хорошо, и в субрепорте отработается, очевидно. А существующие записи как заполнять? Тоже в цикле по рекордсету? :(

ЗЫ. Подменить "на лету" recordsouce, установить filter или filteron не получилось ни изнутри подотчета, ни снаружи. Сделал так, как предложил АлексейК. На главном отчете - поле с источником "=iserror(subreport.report.anyfield)", в details_onformat главного отчета делаю одному из подчиненных visible=true, а другому - false.
...
Рейтинг: 0 / 0
09.06.2004, 14:46
    #32554376
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
Geo, Если у формы ЕСТЬ рекордсоурс, то ЕСТЬ И СОБЫТИЕ NoData

добавь в переменные уровня модуля

Dim IHaveNoRecords As Boolean

В NoData скажи

IHaveNoRecords = True

в формате скажи

If IHaveNoRecords Then
Me.txt1 = arr(arpos)
arpos = arpos + 1

If arpos <= UBound(arr) Then
Me.NextRecord = False
End If
End If
...
Рейтинг: 0 / 0
09.06.2004, 14:48
    #32554380
Гео
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
2 Виктоша
Если нодата, то формат не запускается у субрепорта
...
Рейтинг: 0 / 0
09.06.2004, 14:58
    #32554410
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
2 Geo
в твоем примере в зависимости от источника данных отчета и фильтра нужно будет изменять код а в моем нет ))
...
Рейтинг: 0 / 0
09.06.2004, 15:05
    #32554435
Гео
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
2АлексейК
Я же говорю, пришлось почти по-твоему сделать. Только про группу я не понял, поэтому сделал в перемешку со способом Caper. У меня на одной странице отчета три таких подотчета. (Форма Т2 кадрового учета - сведения о переаттестациях, переквалификациях и чем-то еще). Работает и ладно. Пока-что мне не до фитюлек, к сожалению.
...
Рейтинг: 0 / 0
09.06.2004, 15:08
    #32554452
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
2 Гео - извини.
...
Рейтинг: 0 / 0
09.06.2004, 15:09
    #32554461
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подотчет без записей д.б. в виде пустографки.
Спасибо всем. :)
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Подотчет без записей д.б. в виде пустографки. / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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