powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / datareport, не могу обратиться controls в datareport
12 сообщений из 12, страница 1 из 1
datareport, не могу обратиться controls в datareport
    #34257927
ElinaCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
помогите пожалуйста с controls в Datareport

надо связаться с таблицей в которой 3 поля и все значения вывести в Datareport
проблема с RptTextBox как к ним обратиться

создала Datareport
установила 3 RptTextBox которые unbound
теперь при нажатии на кнопку пишу след.код
автор
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset

Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset

With cn
.Provider = "Microsoft.Jet.OLEDB.4.0;"
.ConnectionString = "Data Source=" & App.path & "\bagrut.mdb"
.Open
End With

With rs
.ActiveConnection = cn
.CursorType = adOpenDynamic
.LockType = adLockReadOnly
.Source = " select * from 16106Without"
.Open
End With

Set DataReport2.DataSource = rs


Set DataReport2.Sections(1).Controls("Text1").DataField = rs.Fields(0)
Set DataReport2.Sections(1).Controls("Text2").DataField = rs.Fields(1)
Set DataReport2.Sections(1).Controls("Text3").DataField = rs.Fields(2)


DataReport2.Show

Set rs = Nothing
Set cn = Nothing


в строчках где обращаюсь к Controls("Text") получаю ошибку
что надо изменить ,помогите
...
Рейтинг: 0 / 0
datareport, не могу обратиться controls в datareport
    #34259205
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Датафилд хочет имя поля а не значение.

Код: plaintext
DataReport2.Sections( 1 ).Controls("Text1").DataField = rs.Fields( 0 ).Name


Текст ошибки в студию. Переводить не надо.


Magnus
...
Рейтинг: 0 / 0
datareport, не могу обратиться controls в datareport
    #34259294
ElinaCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо, попробывала ,но всё равно даёт ошибку

Subscript out of range

такое ощущение ,что что- то в синтаксе т.к когда ставлю точку(.) после
автор
Set DataReport2.Sections(1).Controls("Text1").

не появляется список из которого можно выбрать - так я уже от себя добавляю
автор

DataField



может надо как то по другому записать
...
Рейтинг: 0 / 0
datareport, не могу обратиться controls в datareport
    #34259453
hawkV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня была та же проблема. Но после того, как я в коде оставил только Set DataReport2.DataSource = rs, а в свойствах RptTextBox(text1, и т.д.) в DataField просто написал имя соответствующего поля все заработало.
...
Рейтинг: 0 / 0
datareport, не могу обратиться controls в datareport
    #34259520
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ElinaChSubscript out of range

Проверь существует ли секция и поле с таким именем.
...
Рейтинг: 0 / 0
datareport, не могу обратиться controls в datareport
    #34261292
ElinaCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем большое спасибо

hawkV, сделала точно так же оставила только

Set DataReport2.DataSource = rs

и в DataField вставила поля - всё работает

Большое спасибо


ещё один вопрос
Как можно изменять Caption у RptLabel в PageHeader(Section2) если

Set DataReport3.Sections(2).Controls("Label1").Caption = "caption"

даёт ошибку
...
Рейтинг: 0 / 0
datareport, не могу обратиться controls в datareport
    #34261393
Фотография Бенедикт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ElinaCh,
"даёт ошибку" - это не описание.
Скорее всего, надо убрать Set (или заменить на Let).
...
Рейтинг: 0 / 0
datareport, не могу обратиться controls в datareport
    #34261761
ElinaCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Заменила Set на Let - работает
спасибо

есть ли возможность пронумеровать каждую строку
например на каждой странице по 10 строчек и желатетьно каждую строку пронумеровать в(Detail -section1) и на каждой странице добавить её номер
...
Рейтинг: 0 / 0
datareport, не могу обратиться controls в datareport
    #34261880
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ElinaChЗаменила Set на Let - работает


Внимательнее надо быть. Я дал пример без Set еще в первом ответе. Set - используется для работы с обьектами, Let - для свойств и переменных но т.к. он является оператором по умолчанию то его никогда напрямую и не пишут.
...
Рейтинг: 0 / 0
datareport, не могу обратиться controls в datareport
    #34262102
ElinaCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо не знала

есть ли возможность пронумеровать страницы, строки
...
Рейтинг: 0 / 0
datareport, не могу обратиться controls в datareport
    #34262772
hawkV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Для того чтобы пронумеравать страницы надо в Page Header добавить rptLabel и в его свойстве Caption написать %p-это номер листа(%P- это количество листов). Или по нажатию правой клавишей мыши, в появимшеися меню выбрать: Insert Control->Current Page Number.
...
Рейтинг: 0 / 0
datareport, не могу обратиться controls в datareport
    #34270411
ElinaCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое ,большое спасибо
очень помогло

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


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