Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / datareport, не могу обратиться controls в datareport / 12 сообщений из 12, страница 1 из 1
16.01.2007, 11:16
    #34257927
ElinaCh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
datareport, не могу обратиться controls в datareport
помогите пожалуйста с 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
16.01.2007, 16:00
    #34259205
Magnus23
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
datareport, не могу обратиться controls в datareport
Датафилд хочет имя поля а не значение.

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


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


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

Subscript out of range

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

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

DataField



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

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

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

Set DataReport2.DataSource = rs

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

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


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

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

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

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


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

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

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


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