powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ошибка #имя? в отчете
23 сообщений из 23, страница 1 из 1
ошибка #имя? в отчете
    #39840903
Oleg_Ang
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
добрый день!!! возникла такая ошибка в отчете access 2010. при загрузке отчета выполняется такой расчет
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39840905
Oleg_Ang
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
Private Sub Report_Open(Cancel As Integer)
Dim dbs As Database
Dim rst As Recordset
Dim strSQL As String
Dim a0_1, a1_1, a2_1, a3_1, a4_1, a5_1, a0_2, a1_2, a2_2, a3_2, a4_2, a5_2 As Integer

Set dbs = CurrentDb()
strSQL = "SELECT [rpt6_1].*, * FROM [rpt6_1]"
Set rst = dbs.OpenRecordset(strSQL, dbOpenDynaset, DB_CONSISTENT, dbPessimistic)

With rst
.MoveFirst
  a0_1 = .Fields(0): a1_1 = .Fields(1): a2_1 = .Fields(2): a3_1 = .Fields(3)
  a4_1 = .Fields(4): a5_1 = .Fields(5):
.MoveNext
  a0_2 = .Fields(0): a1_2 = .Fields(1): a2_2 = .Fields(2): a3_2 = .Fields(3)
  a4_2 = .Fields(4): a5_2 = .Fields(5):
End With

rst.Close

End Sub


то данные выводятся на экран в виде ##### или имя?. в access 2003 все выводится как надо. подскажите в чем может быть проблема?
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39840908
Oleg_Ang
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
поля для вывода на печать в отчете выглядят как на рисунке
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39840914
ROI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oleg_Angто данные выводятся на экран в виде ##### или имя?. в access 2003 все выводится как надо. подскажите в чем может быть проблема?
##### - расширте поле
имя? - а пошагово отследить
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39840916
ROI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oleg_Angполя для вывода на печать в отчете выглядят как на рисунке


Данные =[a0_1] здесь должно быть имя поля из recordset уберите знак "=" и скобки []
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39840929
Oleg_Ang
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ROI, так тоже пробовал. это б прокатило если б источник записей был определен, а отчет у меня без Источника записей. в 2003 ведь все показывает
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39840976
Oleg_Ang
Код: sql
1.
2.
3.
Private Sub Report_Open(Cancel As Integer)
...
Dim a0_1, a1_1, a2_1, a3_1, a4_1, a5_1, a0_2, a1_2, a2_2, a3_2, a4_2, a5_2 As Integer

Все эти переменные объявлены внутри процедуры и по ее завершении ликвидируются вместе с данными. Если в 2003-й версии у вас также, то странно, что оно работало.
Объявление как минимум нужно перенести в заголовок модуля. Но даже если вместо Dim указать Public, я не уверен что это сработает в выражении =[a0_1] в поле (никогда так не пробовал). По хорошему надо такие поля делать свободными, а на событии Format раздела присваивать им значения.
Это оригинальная процедура? На картинке у вас больше десятка строк, а здесь вы готовите данные для двух. Может объясните?

Кстати, вы в курсе, что у вас тип Integer только у a5_2, у остальных - Variant?
И еще:
Код: vbnet
1.
strSQL = "SELECT [rpt6_1].*, * FROM [rpt6_1]"

Здесь вы все поля выводите дважды.
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39840980
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может не в тему-а в чем отличия?
Код: vbnet
1.
2.
"SELECT [rpt6_1].*, * FROM [rpt6_1]"
"SELECT [rpt6_1].* FROM [rpt6_1]"
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39840984
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вдогонку:2003 это фиолетово,а 2010 может об это спотыкаться
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39840991
Oleg_Ang
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кривцов Анатолий, у меня стоит объявление переменных через
Option Compare Database
Public a0_1, a1_1, a2_1, a3_1, a4_1, a5_1 As Integer
это я просто пробовал разные варианты и скопировал, что было на тот момент. тип тоже менял - не помогло. где-то читал в инете, что может библиотеку переподключить. может на одном компе они конфликтуют access 2010 и access 2003?
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39840992
Oleg_Ang
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku, пробовал ваш совет - не помогло
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39841001
Oleg_Ang
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кривцов Анатолий, кстати попробовал сделать поля свободными и присвоить им значения, как вы советовали - получилось. если других вариантов не будет, то буду менять так остальные поля
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39841002
ИВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oleg_Ang,
Вам писали Вам о том, что при перечислении переменных через запятую указанный тип объявляется только для последней в списке.
As Integer надо писать после каждой переменной
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39841013
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oleg_Ang,
А Вы выложите(максимально урезанную)в объеме необходимом для демонстрации проблемы-глядишь и ответ побыстрей случится и "Ванговать" не придется
(еще проверьте ссылки)
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39841018
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oleg_Angэто я просто пробовал разные варианты и скопировал, что было на тот момент. тип тоже менял - не помогло.
я же обычно применяю рабочую таблицу и не ломаю голову со свободным recordset
просто, компактно и наглядно
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39841019
Oleg_Angв access 2003 все выводится как надо
1. В А2003 VBA6, в А2010 и свежее - VBA7
2. ИМХО, использование переменных в выражениях вычисляемых полей - не документировано (поправьте коллеги, если ошибаюсь).

Видимо в новых версиях такая штука больше не катит. Делайте как я описал выше.
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39841034
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Судя по тому какие данные Вы хотите видеть в отчете это должна быть не одна таблица и все они извлекаются из таблиц запросом на выборку с рядом вычисляемых полей,который является источником данных для отчета
Выложите БД и не заставляйте нас "ванговать"
(Что в таблице только 2 записи? Если их больше,то как указатель попадает на 5 запись? Переменных в процедуре я насчитал 12,а полей в отчете 9. И вообще имею большие сомнения в корректности работы данной процедуры)
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39841098
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oleg_Ang,
для вычисления значений в том числе,обычно делают так:
Код: vbnet
1.
2.
3.
4.
SELECT Count(работники.Код) AS Всего, -Sum([категория]="руководители") AS Руководители,
-Sum([категория]="специалист") AS специалисты, -Sum([категория]="служащие") AS служащие, 
-Sum([категория]="рабочий") AS Рабочий
FROM работники

Создав нужные Вам отчеты используете их в качестве подчиненных для главного(придав ему нужный Вам вид. В -sum() можно использовать АND, ОR,LIKE)
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39841197
Oleg_Ang
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku,
Совершенно верно вы написали про формировании таблицы из ряда запросов. я вам скинул фрагмент получения данных из последней итоговой таблицы. какая разница 9 записей или 12 - "сумма не меняется". мне нужно было понять почему нет данных при выводе отчета. Всем большое спасибо за советы и помощь!!!
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39841296
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oleg_Angпро формировании таблицы из ряда запросов
вот мой пример решения подобных задач
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39841306
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oleg_Ang,

- 3 справочника(пол, образование, категория работников)
- код для заполнения таблицы сотрудники случайными данными(50 строк)
- рабочая таблица под шапку отчета(ee можно сделать и с запасом столбцов, для других отчетов
- код для заполнения таблицы (100 строк)-- из них 70 --стандартные, для любого отчета
- отчет с таблицы --самое сложное в задаче сделать в стык контролы шапки
- чтобы это обойти, можно применить ексель и для рабочей таблицы и шапки(в любом случае экспорт в ексель потребуется)

хотя я обычно формировала НТМ-формат для печати вордом
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39841365
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdku(Что в таблице только 2 записи? Если их больше,то как указатель попадает на 5 запись? )Эти вопросы так и остались риторикой-ну да ладно
Я о том что,в этом случае,не нужен рекордсет-все решается запросами и созданием таблицы интервалов
Если еще актуально-гляньте:
...
Рейтинг: 0 / 0
ошибка #имя? в отчете
    #39841389
Фотография Лапух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdku,

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


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