|
|
|
| в процедуре из которой вызывается отчет есть переменная strFloor хочу ее значение поставить в отчет txtFloor ???
видимо вопрос простой
спасибо | |
|
| |
|
|
|
| ну можно strFloor передать через openargs и потом в отчете присвоить полю
txtFloor = openargs | |
|
| |
|
|
|
| в отчете нету openargs. Только в форме.
либо через глобальные переменные. Либо, если из формы, то через созданные проперти формы | |
|
| |
|
|
|
| как так нету в отчете
есть, точно есть
ГлазастыйМышь, посмотрите исчо раз :)
ЗЫ Access XP/2003 | |
|
| |
|
|
|
|
|
| а если мне надо передать 4 строки (переменных)? | |
|
| |
|
|
|
|
| проблема что я не могу присвоить ничего полю очета!! | |
|
| |
|
|
|
| используйте Property базы данных
и будет вам счастье
в поле отчета просто напишите
=GetProperty(<ВашеИмяСвойстваБД>)
Sub SetProperty(strName As String, vValue As Variant)
Dim prpNew As Property
Dim errLoop As Error
' Делает попытку задать значение указанного свойства.
On Error GoTo Err_Property
If IsNumeric(vValue) Then
CurrentDb.Properties(strName) = Nz(vValue, 0)
Else
CurrentDb.Properties(strName) = Nz(vValue, " ")
End If
On Error GoTo 0
Exit Sub
Err_Property:
' Ошибка 3270 означает, что свойство не найдено.
If DBEngine.Errors(0).Number = 3270 Then
' Создает свойство, задает его значение и добавляет
' свойство в семейство Properties.
Set prpNew = CurrentDb.CreateProperty(strName, dbText, vValue)
CurrentDb.Properties.Append prpNew
Resume Next
If IsNumeric(vValue) Then
CurrentDb.Properties(strName) = Nz(vValue, 0)
Else
CurrentDb.Properties(strName) = Nz(vValue, " ")
End If
Else
' При возникновении другой ошибки выводит сообщение.
For Each errLoop In DBEngine.Errors
MsgBox "Код ошибки: " & errLoop.Number & vbCr & errLoop.Description
Next errLoop
End
End If
End Sub
Function GetProperty(strName As String)
On Error GoTo Err_GProperty
GetProperty = CurrentDb.Properties(strName).value
Exit Function
Err_GProperty:
End Function
|
| |
|
| |
|
|
|
| спасибо силыч, спасибо всем!
два значения взял из открытой формы и
два из database.properties
| |
|
| |
|
|
|
| в модуле формы:
Value_1 = 1
Value_2 = 2
Value_3 = 3
Value_4 = 4
DoCmd.OpenReport "rpt_Name", acViewPreview, , , , _
Value_1 & "|" & Value_2 & "|" & Value_3 & "|" & Value_4
|
в модуле отчета:
Private Sub ЗаголовокОтчета_Format(Cancel As Integer, FormatCount As Integer)
txt_field_1 = Split(OpenArgs, "|")(0)
txt_field_2 = Split(OpenArgs, "|")(1)
txt_field_3 = Split(OpenArgs, "|")(2)
txt_field_4 = Split(OpenArgs, "|")(3)
End Sub
|
если только не Access 97 (Split там нет) | |
|
| |