![]()  | 
    PDB Database Classes | |
| Links Contact Us FAQ 
 Revision Log: 02/14/05 - Fixed Bug in UniCode to handle more all UniCode Blocks. 02/14/05 - Fixed Bug in ReadNextModified that ignored first record in the database 03/10/04 - UniCode support on strings. Handles a UTF-8 encoding and coding automatically 03/10/04 - Global ByteSwap flag to handle 68000 series byte format. Palm VFS storage. 03/10/04 - Fixed 3 Compile errors in classes  | 
    
     These Classes will allow you to write PDB databases without using Appforge components. These classes are VB6 and are designed to work with desktop applications. Here is an example: Dim oPDB As New PDBDatabase
Dim oByteStream As New PDBByteStream
Dim oAppForgeHeader As New PDBAppforgeDefinition
Dim oAppForgeData As New PDBAppforgeRecord
' Creates a new database
If oPDB.CreateDatabase() Then
    ' Successful
    oPDB.PDBDatabaseName = "test"
    oPDB.CreatorId = "TEST"
    
    ' Creates the Appforge header
    oAppForgeHeader.AddFieldName "Test", eStringField
     
    ' Writes a Record
    Set oAppForgeData.AppforgeDefinition = oAppForgeHeader
    oAppForgeData.StringValue(1) = "test"
        
    ' writes the record
    Set oByteStream = oAppForgeData.ByteStream
    oPDB.Update -1, 0, 0, 0, oByteStream.ByteArray
        
    ' Saves the data
    oPDB.WriteAppInfoBlock oAppForgeHeader.AppInfoBlock
    oPDB.CloseDatabase
Else
    ' failed
    MsgBox "Failed to create"
End If
' Changes information in a database
oPDB.PDBDatabaseName = "AFSampleTable"
If oPDB.OpenDatabase Then
    ' Gets the Appforge file infor
    Set oAppForgeHeader = New PDBAppforgeDefinition
    If oAppForgeHeader.IsAppforgeData(oPDB.ReadAppInfoBlock) Then
        ' This is an appforge database.  Setup the Appforge header
        ' information
        Set oAppForgeData.AppforgeDefinition = oAppForgeHeader
        
        ' Updates the appforge data
        Set oByteStream = New PDBByteStream
        oByteStream.ByteArray = oPDB.ReadNextByIndex(1, 0, 0, 0)
        Set oAppForgeData.ByteStream = oByteStream
        Debug.Print oAppForgeData.BooleanValue(1) & " = True"
        Debug.Print oAppForgeData.ByteValue(2) & " = 10"
        Debug.Print oAppForgeData.CurrencyValue(3) & " = 55"
        Debug.Print oAppForgeData.DateValue(4) & " = 1/31/2002"
        Debug.Print oAppForgeData.SingleValue(5) & " = 1.3"
        Debug.Print oAppForgeData.DoubleValue(6) & " = .5544332211"
        Debug.Print oAppForgeData.IntegerValue(7) & " = 340"
        Debug.Print oAppForgeData.LongValue(8) & " = 45300"
        Debug.Print oAppForgeData.StringValue(9) & " = Hello"
        oAppForgeData.StringValue(9) = "test"
        ' writes the record
        Set oByteStream = oAppForgeData.ByteStream
        oPDB.Update 1, 0, 0, 0, oByteStream.ByteArray
   Else
        ' Not Appforge
        MsgBox "Not an Appforge Database"
   End If
   ' Save changes
   oPDB.WriteAppInfoBlock oAppForgeHeader.AppInfoBlock
   oPDB.CloseDatabase
Else
   MsgBox "Failed to open " & oPDB.PDBDatabaseName
End If
	
    The zip file you receive will include a sample form and all class with source code for creating PDB databases.  | 
  |