Help with Access Memo Field (DAO) 
Author Message
 Help with Access Memo Field (DAO)

Hi All

I am trying to update an Access memo field via VB. I get an error if the
data is longer than 255 characters. When I use the AppendChunk method of the
field in question I get a DBEngine error of "method not supported!  How do
you update a large memo field thought VB?

Code:
<snip>
Set Q = mvarDataSource.QueryDefs("Fetch_Instructor_Note")
Q.Parameters!ID = ID
Set rs = Q.OpenRecordset(dbOpenDynaset)
DBEngine.Idle dbFreeLocks
If Not (rs.EOF And rs.BOF) Then

   rs.Edit

   Call Append_Field(sNote, rs.Fields(0))

   rs.Update

End If

<snip>

Private Function Append_Field(sData As String, _
                              fldDest As Field) As Boolean

'-----------------------
Dim lOffset As Long
Dim lTotalSize As Long
Dim sChunk As String
Dim lChunkSize As Long
'-----------------------

On Error GoTo errhandler

If (Len(sData) < 32768) Then
   lChunkSize = Len(sData)
Else
   lChunkSize = 32768
End If

lOffset = 1
lTotalSize = Len(sData)

Do While lOffset < lTotalSize

   sChunk = Mid$(sData, lOffset, lChunkSize)

   fldDest.AppendChunk sChunk

   lOffset = lOffset + lChunkSize

Loop

Append_Field = True

Exit Function
errhandler:

RaiseEvent ErrorMsg(M & "-AppendField: " & Err.Description)

End Function



Fri, 01 Oct 2004 08:18:31 GMT  
 Help with Access Memo Field (DAO)

Quote:
> Hi All

> I am trying to update an Access memo field via VB. I get an error if the
> data is longer than 255 characters. When I use the AppendChunk method of
the
> field in question I get a DBEngine error of "method not supported!  How do
> you update a large memo field thought VB?

> Code:
> <snip>
> Set Q = mvarDataSource.QueryDefs("Fetch_Instructor_Note")
> Q.Parameters!ID = ID
> Set rs = Q.OpenRecordset(dbOpenDynaset)
> DBEngine.Idle dbFreeLocks
> If Not (rs.EOF And rs.BOF) Then

>    rs.Edit

PROBLEM>>>>> need to reinitialse record

rs!Notes = ""  'that fixed it!

- Show quoted text -

Quote:

>    Call Append_Field(sNote, rs.Fields(0))

>    rs.Update

> End If

> <snip>

> Private Function Append_Field(sData As String, _
>                               fldDest As Field) As Boolean

> '-----------------------
> Dim lOffset As Long
> Dim lTotalSize As Long
> Dim sChunk As String
> Dim lChunkSize As Long
> '-----------------------

> On Error GoTo errhandler

> If (Len(sData) < 32768) Then
>    lChunkSize = Len(sData)
> Else
>    lChunkSize = 32768
> End If

> lOffset = 1
> lTotalSize = Len(sData)

> Do While lOffset < lTotalSize

>    sChunk = Mid$(sData, lOffset, lChunkSize)

>    fldDest.AppendChunk sChunk

>    lOffset = lOffset + lChunkSize

> Loop

> Append_Field = True

> Exit Function
> errhandler:

> RaiseEvent ErrorMsg(M & "-AppendField: " & Err.Description)

> End Function

Problem solved.


Fri, 01 Oct 2004 17:24:45 GMT  
 
 [ 2 post ] 

 Relevant Pages 

1. Access, VB, and DAO problem with a Memo Field

2. DAO.QuaryDef and Memo fields...HELP!!

3. Append memo field to a different memo field

4. Memo fields - problems reporting 2 memo fields

5. Need help with Access Memo Field

6. Access memo field help

7. Displaying MS Access fields over 255 characters (Memo fields)

8. Two memo fields and odbc access. Help me

9. Mail Body field to Access memo field

10. get access-memo-field in an rtftext-field

11. Problem With Memo Fields And DAO

12. Memo field and DAO

 

 
Powered by phpBB® Forum Software