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.
Syntax
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 function
Serial_Open |
Related script steps
Set Serial Direct Insert |
Set Serial Trigger Script |
Related topics
Troi Serial Plug-in online help (overview)