Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Нужна помощь в коде / 25 сообщений из 30, страница 1 из 2
19.03.2019, 15:11
    #39788487
Wawan2005
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
в отдельной базе всё работает как по маслу, только внесу к себе начинает ругаться на
Код: sql
1.
 Dim rs As Recordset


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
Option Compare Database
Option Explicit

Private Sub btnLoad_Click()
Dim strPicFile As String
Dim strFilter As String
Dim rs As Recordset
    'Зададим параметры и вызовем диалог открытия файла
    strFilter = ahtAddFilterItem(strFilter, "Картинки GIF и JPEG", "*.GIF; *.JPG")
    strPicFile = ahtCommonFileOpenSave(Filter:=strFilter, OpenFile:=True, _
                    DialogTitle:="Выберите картинку...", _
                    flags:=ahtOFN_HIDEREADONLY)
    If strPicFile = "" Then Exit Sub 'Если файл не выбран - выходим из процедуры
    Me.txtPictureType = GetExt(strPicFile) 'Расширение файла картинки запомним в поле PictureType
    DoCmd.RunCommand acCmdSaveRecord 'Сохраним запись, что важно, если она новая
    Set rs = Me.RecordsetClone 'Для дальнейшей работы нужен набор записей
    rs.Bookmark = Me.Bookmark 'Встаём на текущую запись формы
    rs.Edit
      Call ReadBLOB(strPicFile, rs, "Picture") 'Пишем картинку из файла в поле Picture
    rs.Update
    'Пишем картинку обратно из поля Picture во временный файл в текущем каталоге базы
    Call WriteBLOB(rs, "Picture", GetPath(CurrentDb.Name) & "temp" & GetExt(strPicFile))
    'Выводим картинку из этого временного файла в форму
    Me.imgPicture.Picture = GetPath(CurrentDb.Name) & "temp" & GetExt(strPicFile)

End Sub

Private Sub Form_Current()
Dim strPicFile As String
Dim rs As Recordset
  Set rs = Me.RecordsetClone 'Для дальнейшей работы нужен набор записей
  If IsNull(Me!ID) Then 'Если запись новая, то очищаем картинку на форме
    Me.imgPicture.Picture = ""
  Else
    rs.Bookmark = Me.Bookmark 'Встаём на текущую запись формы
    strPicFile = GetPath(CurrentDb.Name) & "temp" & Me!PictureType 'Получаем координаты временного файла
    Call WriteBLOB(rs, "Picture", strPicFile) 'Пишем картинку из поля Picture во временный файл
    Me.imgPicture.Picture = strPicFile 'Выводим картинку из этого временного файла в форму
  End If
End Sub


Весь код прилагается
...
Рейтинг: 0 / 0
19.03.2019, 15:14
    #39788491
NBjHCBrc6KlSObm
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Tools - References
...
Рейтинг: 0 / 0
19.03.2019, 15:15
    #39788492
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Wawan2005только внесу к себе начинает ругаться на
Код: sql
1.
 Dim rs As Recordset

DAO подключи и перепиши на
Код: sql
1.
 Dim rs As DAO.Recordset
...
Рейтинг: 0 / 0
19.03.2019, 15:36
    #39788510
Wawan2005
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Akina,

не помогло

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Private Sub btnLoad_Click()
Dim strPicFile As String
Dim strFilter As String
Dim rs As DAO.Recordset
    'Çàäàäèì ïàðàìåòðû è âûçîâåì äèàëîã îòêðûòèÿ ôàéëà
    strFilter = ahtAddFilterItem(strFilter, "Êàðòèíêè GIF è JPEG", "*.GIF; *.JPG")
    strPicFile = ahtCommonFileOpenSave(Filter:=strFilter, OpenFile:=True, _
...
Рейтинг: 0 / 0
19.03.2019, 15:37
    #39788512
Wawan2005
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Wawan2005,

не помогло
Код: sql
1.
2.
3.
4.
5.
6.
7.
Private Sub btnLoad_Click()
Dim strPicFile As String
Dim strFilter As String
Dim rs As DAO.Recordset
    'Зададим параметры и вызовем диалог открытия файла
    strFilter = ahtAddFilterItem(strFilter, "Картинки GIF и JPEG", "*.GIF; *.JPG")
    strPicFile = ahtCommonFileOpenSave(Filter:=strFilter, OpenFile:=True, _
...
Рейтинг: 0 / 0
19.03.2019, 15:42
    #39788515
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
А референсную библиотеку подключить не забыл? и какую именно подключил - фамилию назови.
...
Рейтинг: 0 / 0
19.03.2019, 16:03
    #39788527
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Wawan2005,
авторCall ReadBLOB(strPicFile, rs, "Picture") 'Пишем картинку из файла в поле Picture
Call WriteBLOB(rs, "Picture", GetPath(CurrentDb.Name) & "temp" & GetExt(strPicFile))

а где эти модули прописаны
...
Рейтинг: 0 / 0
19.03.2019, 16:05
    #39788528
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Wawan2005,

и эти
Код: vbnet
1.
2.
3.
Me.txtPictureType = GetExt(strPicFile) 'Расширение файла картинки запомним в поле PictureType
'''''
    Me.imgPicture.Picture = GetPath(CurrentDb.Name) & "temp" & GetExt(strPicFile)
...
Рейтинг: 0 / 0
19.03.2019, 16:08
    #39788529
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
попробуйте вместо
Set rs = Me.RecordsetClone
напишите
Set rs = Me.Recordset
...
Рейтинг: 0 / 0
19.03.2019, 21:57
    #39788678
Wawan2005
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
ПЕНСИОНЕРКА,

в модулях
1-
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
Option Explicit
Public Declare Function GetTempPath Lib "KERNEL32" Alias "GetTempPathA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
Public Declare Function GetTempFileName Lib "KERNEL32" Alias "GetTempFileNameA" (ByVal lpszPath As String, ByVal lpPrefixString As String, ByVal wUnique As Long, ByVal lpTempFileName As String) As Long
Const BlockSize = 32768
      Function ReadBLOB(Source As String, T As Recordset, sField As String)
          Dim NumBlocks As Integer, SourceFile As Integer, i As Integer
          Dim FileLength As Long, LeftOver As Long
          Dim lngMeter As Long
          Dim FileData As String
          Dim byteData() As Byte
          Dim RetVal As Variant
          On Error GoTo Err_ReadBLOB
          SourceFile = FreeFile
          Open Source For Binary Access Read As SourceFile
          FileLength = LOF(SourceFile)
          If FileLength = 0 Then
              ReadBLOB = 0
              Exit Function
          End If
          NumBlocks = FileLength \ BlockSize
          LeftOver = FileLength Mod BlockSize
          lngMeter = FileLength \ 1000
          RetVal = SysCmd(acSysCmdInitMeter, "Reading BLOB", lngMeter)
          If LeftOver > 0 Then
            ReDim byteData(0 To LeftOver - 1)
            Get SourceFile, , byteData
            T(sField).AppendChunk (byteData)
          End If
          lngMeter = LeftOver \ 1000
          RetVal = SysCmd(acSysCmdUpdateMeter, lngMeter)
          ReDim byteData(0 To BlockSize - 1)
          For i = 1 To NumBlocks
              Get SourceFile, , byteData
              T(sField).AppendChunk (byteData)
              lngMeter = BlockSize * i \ 1000
              RetVal = SysCmd(acSysCmdUpdateMeter, lngMeter)
          Next i
          RetVal = SysCmd(acSysCmdRemoveMeter)
          Close SourceFile
          ReadBLOB = FileLength
          Exit Function
Err_ReadBLOB:
          ReadBLOB = -Err
          Exit Function
      End Function
      Function WriteBLOB(T As Recordset, sField As String, Destination As String)
          Dim NumBlocks As Integer, DestFile As Integer, i As Integer
          Dim FileLength As Long, LeftOver As Long
          Dim lngMeter As Long
          Dim byteData() As Byte
          Dim RetVal As Variant
          On Error GoTo Err_WriteBLOB
          FileLength = T(sField).FieldSize()
          If FileLength = 0 Then
              WriteBLOB = 0
              Exit Function
          End If
          NumBlocks = FileLength \ BlockSize
          LeftOver = FileLength Mod BlockSize
          DestFile = FreeFile
          Open Destination For Output As DestFile
          Close DestFile
          Open Destination For Binary As DestFile
          lngMeter = FileLength \ 1000
          RetVal = SysCmd(acSysCmdInitMeter, "Writing BLOB", lngMeter)
          If LeftOver > 0 Then
            byteData() = T(sField).GetChunk(0, LeftOver)
            Put DestFile, , byteData
          End If
          lngMeter = LeftOver \ 1000
          RetVal = SysCmd(acSysCmdUpdateMeter, lngMeter)
          For i = 1 To NumBlocks
              byteData() = T(sField).GetChunk((i - 1) * BlockSize _
                 + LeftOver, BlockSize)
              Put DestFile, , byteData
              lngMeter = (i * BlockSize + LeftOver) \ 1000
              RetVal = SysCmd(acSysCmdUpdateMeter, lngMeter)
          Next i
          RetVal = SysCmd(acSysCmdRemoveMeter)
          Close DestFile
          WriteBLOB = FileLength
          Exit Function
Err_WriteBLOB:
          WriteBLOB = -Err
          Exit Function
      End Function


2-
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
Option Compare Database
Option Explicit
Type tagOPENFILENAME
    lStructSize As Long
    hwndOwner As Long
    hInstance As Long
    strFilter As String
    strCustomFilter As String
    nMaxCustFilter As Long
    nFilterIndex As Long
    strFile As String
    nMaxFile As Long
    strFileTitle As String
    nMaxFileTitle As Long
    strInitialDir As String
    strTitle As String
    flags As Long
    nFileOffset As Integer
    nFileExtension As Integer
    strDefExt As String
    lCustData As Long
    lpfnHook As Long
    lpTemplateName As String
End Type
Declare Function aht_apiGetOpenFileName Lib "comdlg32.dll" _
    Alias "GetOpenFileNameA" (OFN As tagOPENFILENAME) As Boolean
Declare Function aht_apiGetSaveFileName Lib "comdlg32.dll" _
    Alias "GetSaveFileNameA" (OFN As tagOPENFILENAME) As Boolean
Declare Function CommDlgExtendedError Lib "comdlg32.dll" () As Long
Global Const ahtOFN_READONLY = &H1
Global Const ahtOFN_OVERWRITEPROMPT = &H2
Global Const ahtOFN_HIDEREADONLY = &H4
Global Const ahtOFN_NOCHANGEDIR = &H8
Global Const ahtOFN_SHOWHELP = &H10
Global Const ahtOFN_NOVALIDATE = &H100
Global Const ahtOFN_ALLOWMULTISELECT = &H200
Global Const ahtOFN_EXTENSIONDIFFERENT = &H400
Global Const ahtOFN_PATHMUSTEXIST = &H800
Global Const ahtOFN_FILEMUSTEXIST = &H1000
Global Const ahtOFN_CREATEPROMPT = &H2000
Global Const ahtOFN_SHAREAWARE = &H4000
Global Const ahtOFN_NOREADONLYRETURN = &H8000
Global Const ahtOFN_NOTESTFILECREATE = &H10000
Global Const ahtOFN_NONETWORKBUTTON = &H20000
Global Const ahtOFN_NOLONGNAMES = &H40000
Global Const ahtOFN_EXPLORER = &H80000
Global Const ahtOFN_NODEREFERENCELINKS = &H100000
Global Const ahtOFN_LONGNAMES = &H200000
Function TestIt()
    Dim strFilter As String
    Dim lngFlags As Long
    strFilter = ahtAddFilterItem(strFilter, "Access Files (*.mda, *.mdb)", _
                    "*.MDA;*.MDB")
    strFilter = ahtAddFilterItem(strFilter, "dBASE Files (*.dbf)", "*.DBF")
    strFilter = ahtAddFilterItem(strFilter, "Text Files (*.txt)", "*.TXT")
    strFilter = ahtAddFilterItem(strFilter, "All Files (*.*)", "*.*")
    MsgBox "You selected: " & ahtCommonFileOpenSave(InitialDir:="C:\", _
        Filter:=strFilter, FilterIndex:=3, flags:=lngFlags, _
        DialogTitle:="Hello! Open Me!")
    Debug.Print Hex(lngFlags)
End Function
Function GetOpenFile(Optional varDirectory As Variant, _
    Optional varTitleForDialog As Variant) As Variant
Dim strFilter As String
Dim lngFlags As Long
Dim varFileName As Variant
    lngFlags = ahtOFN_FILEMUSTEXIST Or _
                ahtOFN_HIDEREADONLY Or ahtOFN_NOCHANGEDIR
    If IsMissing(varDirectory) Then
        varDirectory = ""
    End If
    If IsMissing(varTitleForDialog) Then
        varTitleForDialog = ""
    End If
    strFilter = ahtAddFilterItem(strFilter, _
                "Access (*.mdb)", "*.MDB;*.MDA")
    varFileName = ahtCommonFileOpenSave( _
                    OpenFile:=True, _
                    InitialDir:=varDirectory, _
                    Filter:=strFilter, _
                    flags:=lngFlags, _
                    DialogTitle:=varTitleForDialog)
    If Not IsNull(varFileName) Then
        varFileName = TrimNull(varFileName)
    End If
    GetOpenFile = varFileName
End Function
Function ahtCommonFileOpenSave( _
            Optional ByRef flags As Variant, _
            Optional ByVal InitialDir As Variant, _
            Optional ByVal Filter As Variant, _
            Optional ByVal FilterIndex As Variant, _
            Optional ByVal DefaultExt As Variant, _
            Optional ByVal FileName As Variant, _
            Optional ByVal DialogTitle As Variant, _
            Optional ByVal hWnd As Variant, _
            Optional ByVal OpenFile As Variant) As Variant
Dim OFN As tagOPENFILENAME
Dim strFileName As String
Dim strFileTitle As String
Dim fResult As Boolean
    If IsMissing(InitialDir) Then InitialDir = CurDir
    If IsMissing(Filter) Then Filter = ""
    If IsMissing(FilterIndex) Then FilterIndex = 1
    If IsMissing(flags) Then flags = 0&
    If IsMissing(DefaultExt) Then DefaultExt = ""
    If IsMissing(FileName) Then FileName = ""
    If IsMissing(DialogTitle) Then DialogTitle = ""
    If IsMissing(hWnd) Then hWnd = Application.hWndAccessApp
    If IsMissing(OpenFile) Then OpenFile = True
    strFileName = Left(FileName & String(256, 0), 256)
    strFileTitle = String(256, 0)
    With OFN
        .lStructSize = Len(OFN)
        .hwndOwner = hWnd
        .strFilter = Filter
        .nFilterIndex = FilterIndex
        .strFile = strFileName
        .nMaxFile = Len(strFileName)
        .strFileTitle = strFileTitle
        .nMaxFileTitle = Len(strFileTitle)
        .strTitle = DialogTitle
        .flags = flags
        .strDefExt = DefaultExt
        .strInitialDir = InitialDir
        .hInstance = 0
        .strCustomFilter = ""
        .nMaxCustFilter = 0
        .lpfnHook = 0
        .strCustomFilter = String(255, 0)
        .nMaxCustFilter = 255
    End With
    If OpenFile Then
        fResult = aht_apiGetOpenFileName(OFN)
    Else
        fResult = aht_apiGetSaveFileName(OFN)
    End If
    If fResult Then
        If Not IsMissing(flags) Then flags = OFN.flags
        ahtCommonFileOpenSave = TrimNull(OFN.strFile)
    Else
        ahtCommonFileOpenSave = vbNullString
    End If
End Function
Function ahtAddFilterItem(strFilter As String, _
    strDescription As String, Optional varItem As Variant) As String
    If IsMissing(varItem) Then varItem = "*.*"
    ahtAddFilterItem = strFilter & _
                strDescription & vbNullChar & _
                varItem & vbNullChar
End Function
Private Function TrimNull(ByVal strItem As String) As String
Dim intPos As Integer
    intPos = InStr(strItem, vbNullChar)
    If intPos > 0 Then
        TrimNull = Left(strItem, intPos - 1)
    Else
        TrimNull = strItem
    End If
End Function

Sub test()
Dim strFilter As String
Dim strInputFileName As String

strFilter = ahtAddFilterItem(strFilter, "Excel Files (*.XLS)", "*.XLS")
strInputFileName = ahtCommonFileOpenSave(Filter:=strFilter, OpenFile:=True, _
                DialogTitle:="Please select an input file...", _
                flags:=ahtOFN_HIDEREADONLY)
End Sub


3-
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
Option Compare Database
Option Explicit

Public Function GetPath(FullPath As String) As String
  Dim lngCurrPos, lngLastPos As Long
  Do
    lngLastPos = lngCurrPos
    lngCurrPos = InStr(lngLastPos + 1, FullPath, "\")
  Loop Until lngCurrPos = 0
  If lngLastPos <> 0 Then GetPath = Left(FullPath, lngLastPos)
End Function

Public Function GetFile(FullPath As String) As String
  Dim lngCurrPos, lngLastPos As Long
  Do
    lngLastPos = lngCurrPos
    lngCurrPos = InStr(lngLastPos + 1, FullPath, "\")
  Loop Until lngCurrPos = 0
  If lngLastPos <> 0 Then GetFile = Right$(FullPath, Len(FullPath) - lngLastPos)
End Function

Public Function GetExt(FullPath As String) As String
  Dim lngCurrPos, lngLastPos As Long
  Do
    lngLastPos = lngCurrPos
    lngCurrPos = InStr(lngLastPos + 1, FullPath, ".")
  Loop Until lngCurrPos = 0
  If lngLastPos <> 0 Then GetExt = Right$(FullPath, Len(FullPath) - lngLastPos + 1)
End Function

...
Рейтинг: 0 / 0
20.03.2019, 08:13
    #39788767
Wawan2005
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
ПЕНСИОНЕРКА,

Если у Вас есть время, могу Вам прислать базу, для "посмотреть" -)
...
Рейтинг: 0 / 0
20.03.2019, 11:04
    #39788875
yoichi730
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
если офис старше 2007, да и еще 64 битный, то скорее всего DAO там не пахнет... вот решение
...
Рейтинг: 0 / 0
20.03.2019, 11:11
    #39788882
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Wawan2005ПЕНСИОНЕРКА,

Если у Вас есть время, могу Вам прислать базу, для "посмотреть" -)
могу и посмотреть
у меня а2010х32
...
Рейтинг: 0 / 0
20.03.2019, 11:24
    #39788893
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
yoichi730если офис старше 2007, да и еще 64 битный, то скорее всего DAO там не пахнетА что в 64битном Access нет библиотеки "Microsoft Office 14.0 Access database engine Object Library"? (нет у меня такой битности Access'а). Вот сомневаюсь я сильно.
...
Рейтинг: 0 / 0
20.03.2019, 11:42
    #39788908
yoichi730
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Панург,
Ну а вдруг) всякое бывает
Могу судить только по себе, буквально сегодня при попытке завести старый код Акцессушка начал ругаться на отсутствующую ссылку. Библиотека то есть в списке, вот только была на не под галочкой..
...
Рейтинг: 0 / 0
20.03.2019, 12:22
    #39788946
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
yoichi730Ну а вдруг) всякое бываетВдруг бывает... DAO переехало в вышеуказанную библиотеку со всеми изменениями (DAO36 ACEDAO)
...
Рейтинг: 0 / 0
20.03.2019, 12:32
    #39788953
yoichi730
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Панург,
Я вас умоляю.. об одном и том же спорим.. Давайте по существу и пойдемте в "курилку" с этой темой..
...
Рейтинг: 0 / 0
20.03.2019, 19:20
    #39789229
Wawan2005
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
"Оперативные карточки" это туда надо вставить форму из "pitures.* "
в оперативке я уже вставил модули и форму "pitures" вот эта форма-то и не работает-)
Заранее спасибо.
P.S.: причем "pitures.* " сама по себе работает, проблема только когда переношу к себе в базу-(

это сама база и исходник вставки.
https://cloud.mail.ru/public/KASe/yZvygbyz8
...
Рейтинг: 0 / 0
21.03.2019, 06:59
    #39789312
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Wawan2005,

заменила 1 строку
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
Private Sub btnLoad_Click()
Dim strPicFile As String
Dim strFilter As String
Dim rs As Recordset
    'Зададим параметры и вызовем диалог открытия файла
    strFilter = ahtAddFilterItem(strFilter, "Картинки GIF и JPEG", "*.GIF; *.JPG")
    strPicFile = ahtCommonFileOpenSave(Filter:=strFilter, OpenFile:=True, _
                    DialogTitle:="Выберите картинку...", _
                    flags:=ahtOFN_HIDEREADONLY)
    If strPicFile = "" Then Exit Sub 'Если файл не выбран - выходим из процедуры
    Debug.Print 1, ID, Me.Name, Me.RecordSource
    Me.txtPictureType = GetExt(strPicFile) 'Расширение файла картинки запомним в поле PictureType
     Debug.Print 2, Me.ID, Me.Name, Me.RecordSource
     Debug.Print 3, Me.txtPictureType
'''заблокировала
''    DoCmd.RunCommand acCmdSaveRecord 'Сохраним запись, что важно, если она новая
'''вставила строку
    Me.Dirty = False
'''''''''''''''''''''''''''''''''''''''''''''
    Set rs = Me.RecordsetClone 'Для дальнейшей работы нужен набор записей
    rs.Bookmark = Me.Bookmark 'Встаём на текущую запись формы
    rs.Edit
      Call ReadBLOB(strPicFile, rs, "Picture") 'Пишем картинку из файла в поле Picture
    rs.Update
    'Пишем картинку обратно из поля Picture во временный файл в текущем каталоге базы
    Call WriteBLOB(rs, "Picture", GetPath(CurrentDb.Name) & "temp" & GetExt(strPicFile))
    'Выводим картинку из этого временного файла в форму
    Me.imgPicture.Picture = GetPath(CurrentDb.Name) & "temp" & GetExt(strPicFile)

End Sub



и конечно явные замечания
--есть таблица пути полъезда , а в ней поле пути полъезда
--10 вкладок с сотней подстановок тоже не добавляют устойчивости базе
...
Рейтинг: 0 / 0
21.03.2019, 08:43
    #39789335
Wawan2005
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
ПЕНСИОНЕРКА,

Большое спасибо, по поводу замечаний, поле переименую, но с вкладками вариантов нет, девчата уже привыкли к интерфейсу-)
...
Рейтинг: 0 / 0
21.03.2019, 08:48
    #39789337
Wawan2005
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
ПЕНСИОНЕРКА,

Сейчас проверил, всё равно ругается при нажатии кнопки-(
...
Рейтинг: 0 / 0
21.03.2019, 10:41
    #39789417
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Wawan2005ПЕНСИОНЕРКА,

Сейчас проверил, всё равно ругается при нажатии кнопки-(
у меня работает и главная форма и picture2

--
https://cloud.mail.ru/public/6QYa/VRoJ2kKck
...
Рейтинг: 0 / 0
21.03.2019, 10:46
    #39789421
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Wawan2005девчата уже привыкли к интерфейсу
сочувствую им .....весьма....весьма

дополнительный вопрос
--какая у вас версия аксесс
...
Рейтинг: 0 / 0
21.03.2019, 10:49
    #39789427
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
Wawan2005в отдельной базе всё работает как по маслу, только внесу к себе начинает ругаться на
Код: sql
1.
 Dim rs As Recordset



кстати ее я обычно уточняю, как

Код: vbnet
1.
Dim rs As dao.Recordset
...
Рейтинг: 0 / 0
21.03.2019, 11:48
    #39789482
Wawan2005
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь в коде
ПЕНСИОНЕРКА,

То что Вы прислали всё работает, полтергейст какой-то -)
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Нужна помощь в коде / 25 сообщений из 30, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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