Skip to main content

Serial_SetDirectInsert (function reference)

By July 1, 2023July 17th, 2023Online Help, Troi Serial Plug-in
Troi Serial Plug-in > Functions reference > Serial_SetDirectInsert
Troi Serial Plug-in for FileMaker Pro

Serial_SetDirectInsert

Specifies how to insert data directly into the database when data is received. If you give an empty filename parameter, the direct insert is canceled.

SyntaxFunction badge

Serial_SetDirectInsert ( switches ; portname ; filename ; tablename ;
                         fieldname ; matchstring )

Parameters

switches modifies how this function behaves
portname the name of the serial port to be coupled to this direct insert setting
filename the name of the file where the data needs to be inserted into
tablename the name of the table occurrence where the data needs to be inserted into
fieldname the name of the field where the data needs to be inserted into
matchstring (optional) wait for a match string before inserting the data

Switches

switches can be one of this:

-GetLastMatch the last string of text that matches the match string will be inserted
-ConvertBytesToNumbers converts all received bytes to their numeric value, with space as separator

Returned Result

Data type returned

Error code

Result

The returned result is an error code. An error always starts with 2 dollars, followed by the error code. You should always check for errors. Returned error codes can be:

0 no error DirectInsert was set
$$-50 paramErr there was an error with the parameters

Other errors may be returned.

Originated in

Troi Serial Plug-in 5.5

Compatibility

FileMaker Pro 16 to FileMaker Pro 2023

Considerations

If the filename parameter is empty, the plug-in will no longer insert data directly into the database.
The switch -ConvertBytesToNumbers was added in version 7.0.

Example

Set Variable [ $ErrorCode ; Serial_SetDirectInsert ( "-Unused" ; "port1" ; 
	Get ( FileName ) ; "IncomingData"  ; "dataField" ; "OK" ) ]

This will set the Direct Insert for port1. Incoming data will be inserted into field “dataField” of table “IncomingData” of the current file. The data will not be inserted before the string “OK” is found.

Set Variable [ $ErrorCode  ; Serial_SetDirectInsert ( "-Unused" ;  "COM2" ; Get ( FileName ) ;
		"IncomingData" ; "dataField" ; "¶" ]

This will set the DirectInsert for the COM2 port. Data will be directly inserted into field “dataField” of table “IncomingData” of the current file when a return is found in the incoming data.

Example 2

Set Field [ gErrorCode ; Serial_SetDirectInsert ( "-Unused" ; "COM2" ; "" ) ]

This will reset the DirectInsert. Although the incoming data is still buffered, no action is taken when data is received. You can still get the data out by calling the Serial_Receive( ) function.

Used in example file

Measure Temperature.fmp12

Related functionFunction badge

Serial_Open

Related script stepsScript step badge

Set Serial Direct Insert
Set Serial Trigger Script

Related topics

Troi Serial Plug-in online help (overview)


Online Help Page for Troi Serial Plug-in for 16 to 2023 –> Serial_SetDirectInsert (serip4816) 2023-0717 12:55:45