|  |   |   | 
version 2003
PA_SetBlobField (tNum; fNum; newBlob; len)
| Parameter | Type | Description | |
| tNum | short | → | Table number of the field to access | 
| fNum | short | → | Field number of the field to access | 
| newBlob | void* | → | Pointer to the new BLOB data | 
| len | long | → | Size of the BLOB in bytes | 
Description
   The routine
   
    
     PA_SetBlobField
    
   
   fills the BLOB field number
   
    fNum
   
   of the current record of the table number
   
    tNum
   
   with the data pointed to by
   
    newBlob
   
   , of size
   
    len
   
   .
  
   If the field is not a BLOB field, the routine does nothing and sets an error in
   
    
     PA_GetLastError
    
   
   ().
  
   Note that
   
    
     PA_SetBlobField
    
   
   duplicates
   
    newBlob
   
   , which still belongs to the plug-in after the call. To give the data without duplicating it, use
   
    
     PA_SetBlobHandleField
    
   
   .
  
Example
Fill the field content with the content of a BLOB variable (no error checking here)
   void BlobVariableToBlobField (PA_Variable v, short tNum, short fNum)
   {
      PA_Handle   blobH;
      char      *ptr;
 
      if(PA_GetVariableKind(v) == eVK_Blob)
      {
   // Since we do not touch to the BLOB data we do not have to duplicate it,
   // put it in the field, then dispose of it. We simply use the variable BLOB handle
         blobH = PA_GetBlobHandleVariable(v);
 
   // Lock and transfert the data
         ptr = PA_LockHandle(blobH);
         PA_SetBlobField(tNum, fNum, ptr, PA_GetHandleSize(blobH));
         PA_UnlockHandle(blobH);
      }
   }
See Also
PA_GetBlobField , PA_GetBlobHandleField , PA_SetBlobHandleField .
Error Handling
   Use
   
    
     PA_GetLastError
    
   
   to see if an error occurred (
   
    eER_InvalidFileNumber
   
   ,
   
    eER_InvalidFieldNumber
   
   )