Hi Christian,
Thanks for your help the other day. I still need to spend more time understanding callbacks and learning more about the ui-table which has so many capabilities. I did find a link on how to highlight a row (unfortunately I can't find that link anymore).
Highlighting a row is a simple matter of adding a CSS template and ui-control. I have updated the flow in case you or someone else is interested to see how it works.
[{"id":"a65059e8.23da28","type":"tab","label":"Test","disabled":false,"info":""},{"id":"ba102b3a.7319a8","type":"function","z":"a65059e8.23da28","name":"Format Table","func":"\n//var DT_List = global.get(\"DT_List\");\n//var i;\n//var Line = msg.payload;\n\n\n\n// Can change color in CSS, but not sure where / how to do this:\n //.tabulator .tabulator-row.selected{\n //\tbackground: #f00 !important; /*highlight selected row red, make sure it overrides existing styling*/\n //}\n\n// Display up to 12 rows, select row 0, and highlight in red.\nmsg.ui_control = {\n \"customHeight\":12,\n \"tabulator\": {\n \"selectable\":1,\n \"renderComplete\":\"function(){this.send({ui_control:{callback:'renderComplete'}})}\"\n }\n};\n\n\nreturn msg;","outputs":1,"noerr":0,"x":510,"y":620,"wires":[["28893be0.9b6f54"]]},{"id":"28893be0.9b6f54","type":"ui_table","z":"a65059e8.23da28","group":"95d1f5b8.fec938","name":"Table1","order":1,"width":"16","height":"10","columns":[{"field":"RecNo","title":"RecNo","width":"11px","align":"center","formatter":"plaintext","formatterParams":{"target":"_blank"}},{"field":"EvtStartTime","title":"Event Start Time","width":"20px","align":"left","formatter":"plaintext","formatterParams":{"target":"_blank"}},{"field":"L_Code","title":"L_Code","width":"12px","align":"center","formatter":"plaintext","formatterParams":{"target":"_blank"}},{"field":"Dur","title":"Dur","width":"10px","align":"center","formatter":"plaintext","formatterParams":{"target":"_blank"}}],"outputs":1,"cts":true,"x":915,"y":620,"wires":[["c2b8fea0.8095","a5fdb550.df5e48"]]},{"id":"c2b8fea0.8095","type":"debug","z":"a65059e8.23da28","name":"A","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":1068,"y":603,"wires":[]},{"id":"725a6131.65486","type":"function","z":"a65059e8.23da28","name":"InitializeData","func":"msg.payload = [{\n\t\t\t\"ID\": 20879,\n\t\t\t\"WO_StartTime\": \"2020-08-01 16:05:29\",\n\t\t\t\"EvtStartTime\": \"2020-08-01 17:29:11\",\n\t\t\t\"WO_No\": \"AUG1B\",\n\t\t\t\"RecNo\": 49,\n\t\t\t\"ModeNo\": 1,\n\t\t\t\"L_Code\": 45,\n\t\t\t\"Dur\": 0.07,\n\t\t\t\"L_Reason\": \"45 - Filler - Idle Blocked - Outfeed Conveyor Full\"\n\t\t},\n\t\t{\n\t\t\t\"ID\": 20878,\n\t\t\t\"WO_StartTime\": \"2020-08-01 16:05:29\",\n\t\t\t\"EvtStartTime\": \"2020-08-01 17:28:43\",\n\t\t\t\"WO_No\": \"AUG1B\",\n\t\t\t\"RecNo\": 48,\n\t\t\t\"ModeNo\": 1,\n\t\t\t\"L_Code\": 144,\n\t\t\t\"Dur\": 0.47,\n\t\t\t\"L_Reason\": \"144 - Labeler - Low Low Labels\"\n\t\t},\n\t\t{\n\t\t\t\"ID\": 20877,\n\t\t\t\"WO_StartTime\": \"2020-08-01 16:05:29\",\n\t\t\t\"EvtStartTime\": \"2020-08-01 17:24:29\",\n\t\t\t\"WO_No\": \"AUG1B\",\n\t\t\t\"RecNo\": 46,\n\t\t\t\"ModeNo\": 1,\n\t\t\t\"L_Code\": 91,\n\t\t\t\"Dur\": 4.22,\n\t\t\t\"L_Reason\": \"91 - Seamer - System Manual Mode\"\n\t\t},\n\t\t{\n\t\t\t\"ID\": 20875,\n\t\t\t\"WO_StartTime\": \"2020-08-01 16:05:29\",\n\t\t\t\"EvtStartTime\": \"2020-08-01 17:24:25\",\n\t\t\t\"WO_No\": \"AUG1B\",\n\t\t\t\"RecNo\": 44,\n\t\t\t\"ModeNo\": 1,\n\t\t\t\"L_Code\": 9,\n\t\t\t\"Dur\": 0.02,\n\t\t\t\"L_Reason\": \"9 - Can Cleaner - Door #2 Open\"\n\t\t},\n\t\t{\n\t\t\t\"ID\": 20874,\n\t\t\t\"WO_StartTime\": \"2020-08-01 16:05:29\",\n\t\t\t\"EvtStartTime\": \"2020-08-01 17:00:00\",\n\t\t\t\"WO_No\": \"AUG1B\",\n\t\t\t\"RecNo\": 42,\n\t\t\t\"ModeNo\": 1,\n\t\t\t\"L_Code\": 35,\n\t\t\t\"Dur\": 9.43,\n\t\t\t\"L_Reason\": \"35 - Filler - Inspection Door 2 Open\"\n\t\t}];\n\t\t\nreturn msg;","outputs":1,"noerr":0,"x":510,"y":569,"wires":[["ba102b3a.7319a8"]]},{"id":"c36f02e7.581b3","type":"inject","z":"a65059e8.23da28","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":313,"y":552,"wires":[["725a6131.65486"]]},{"id":"ae66d03e.f96fb","type":"function","z":"a65059e8.23da28","name":"select row 1","func":"if (msg.hasOwnProperty('ui_control') && msg.ui_control.callback === \"renderComplete\") {\n var msgOut={\n payload:{\n command:\"selectRow\",\n arguments: [1],\n returnPromise: false\n }\n }\n return msgOut;\n}","outputs":1,"noerr":0,"x":510,"y":688,"wires":[["28893be0.9b6f54","190f4060.99a39"]]},{"id":"a3d9cd9d.fc7a","type":"ui_ui_control","z":"a65059e8.23da28","name":"","events":"all","x":313,"y":586,"wires":[["725a6131.65486"]]},{"id":"a5fdb550.df5e48","type":"link out","z":"a65059e8.23da28","name":"","links":["932bb72a.8c6df8"],"x":1033,"y":654,"wires":[]},{"id":"932bb72a.8c6df8","type":"link in","z":"a65059e8.23da28","name":"","links":["a5fdb550.df5e48"],"x":370,"y":688,"wires":[["ae66d03e.f96fb"]]},{"id":"190f4060.99a39","type":"debug","z":"a65059e8.23da28","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":745,"y":688,"wires":[]},{"id":"52b617b1.d29588","type":"function","z":"a65059e8.23da28","name":"callback functions","func":"var rowFormatter = function(row){ \n var data = row.getData();\n switch (data.$state) {\n case 'lost': \n row.getElement().style.backgroundColor = '#9e2e66';\n row.getElement().style.color = '#a6a6a6';\n break; \n case 'sleeping':\n row.getElement().style.backgroundColor = '#336699';\n break;\n case 'disconnected':\n row.getElement().style.backgroundColor = '#cc3300';\n row.getElement().style.color = '#a6a6a6';\n break;\n case 'alert': \n row.getElement().style.backgroundColor = '#A6A6DF';\n break; \n case 'init': \n row.getElement().style.backgroundColor = '#f2f20d';\n break; \n case 'ready':\n row.getElement().style.backgroundColor = '';\n row.getElement().style.color = '';\n break; \n \n } \n};\n\nreturn msg;","outputs":1,"noerr":0,"x":955,"y":705,"wires":[[]]},{"id":"d40e1fc7.955f9","type":"function","z":"a65059e8.23da28","name":"Test Select","func":"var msg1 = {};\nvar msg2 = {};\nvar msg3 = {};\nvar msg4 = {};\nvar msg5 = {};\nvar msg6 = {};\n\n// var oldRow = flow.get(\"oldRow\");\n// var newRow = flow.get(\"newRow\");\n\n//flow.set(\"oldRow\", oldRow);\n//flow.set(\"oldRow\", oldRow);\n \nif (msg.topic === \"Select0\") { \n msg1.topic = msg.topic;\n msg1.payload = {\n \"command\":\"selectRow\",\n \"arguments\": [0], \n \"returnPromise\":false\n };\n return msg1;\n}\n \nif (msg.topic === \"Select1\") { \n msg1.topic = msg.topic;\n msg1.payload = {\n \"command\":\"selectRow\",\n \"arguments\": [1], \n \"returnPromise\":false\n };\n return msg1;\n}\n\nif (msg.topic === \"Select2\") { \n msg2.topic = msg.topic;\n msg2.payload = {\n \"command\":\"selectRow\",\n \"arguments\": [2], \n \"returnPromise\":false\n }\n return msg2;\n}\n\nif (msg.topic === \"DeSelect0\") { \n msg3.topic = msg.topic;\n msg3.payload = {\n \"command\":\"deselectRow\",\n \"arguments\": [0], \n \"returnPromise\":false\n }\n return msg3;\n} \n\nif (msg.topic === \"DeSelect1\") { \n msg3.topic = msg.topic;\n msg3.payload = {\n \"command\":\"deselectRow\",\n \"arguments\": [1], \n \"returnPromise\":false\n }\n return msg3;\n} \n\nif (msg.topic === \"DeSelect2\") { \n msg4.topic = msg.topic;\n msg4.payload = {\n \"command\":\"deselectRow\",\n \"arguments\": [2], \n \"returnPromise\":false\n }\n return msg4;\n} \n\nif (msg.topic === \"SelectAll\") { \n msg5.topic = msg.topic;\n msg5.payload = {\n \"command\":\"selectRow\",\n \"arguments\": [], \n \"returnPromise\":false\n }\n return msg5;\n} \n \nif (msg.topic === \"DeSelectAll\") { \n msg6.topic = msg.topic;\n msg6.payload = {\n \"command\":\"deselectRow\",\n \"arguments\": [], \n \"returnPromise\":false\n }\n return msg6;\n} \n \n ","outputs":1,"noerr":0,"x":710,"y":400,"wires":[["28893be0.9b6f54"]]},{"id":"f9738581.6e8408","type":"inject","z":"a65059e8.23da28","name":"Select 1","topic":"Select1","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":520,"y":260,"wires":[["d40e1fc7.955f9"]]},{"id":"4d6700c0.e7b1","type":"inject","z":"a65059e8.23da28","name":"Select 2","topic":"Select2","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":520,"y":340,"wires":[["d40e1fc7.955f9"]]},{"id":"fc031e90.33807","type":"inject","z":"a65059e8.23da28","name":"DeSelect 1","topic":"DeSelect1","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":520,"y":300,"wires":[["d40e1fc7.955f9"]]},{"id":"76a95f90.23894","type":"inject","z":"a65059e8.23da28","name":"DeSelect 2","topic":"DeSelect2","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":520,"y":380,"wires":[["d40e1fc7.955f9"]]},{"id":"f710e2fb.7ebc7","type":"inject","z":"a65059e8.23da28","name":"SelectAll","topic":"SelectAll","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":520,"y":420,"wires":[["d40e1fc7.955f9"]]},{"id":"21203b42.126d64","type":"inject","z":"a65059e8.23da28","name":"DeSelect All","topic":"DeSelectAll","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":530,"y":460,"wires":[["d40e1fc7.955f9"]]},{"id":"41ac3f2f.f76ec","type":"inject","z":"a65059e8.23da28","name":"Select 0","topic":"Select0","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":520,"y":180,"wires":[["d40e1fc7.955f9"]]},{"id":"29f6b693.cb0e9a","type":"inject","z":"a65059e8.23da28","name":"DeSelect 0","topic":"DeSelect0","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":520,"y":220,"wires":[["d40e1fc7.955f9"]]},{"id":"a16debbf.3be6d8","type":"ui_template","z":"a65059e8.23da28","d":true,"group":"f314211.befcae","name":"","order":1,"width":0,"height":0,"format":"<style>\n.tabulator-row.tabulator-selected {\n\tbackground: #eaa !important;\n}\n</style>","storeOutMessages":true,"fwdInMessages":true,"resendOnRefresh":true,"templateScope":"global","x":920,"y":560,"wires":[[]]},{"id":"95d1f5b8.fec938","type":"ui_group","z":"","name":"Group 1","tab":"7d788f33.2e1a2","order":1,"disp":true,"width":"16","collapse":false},{"id":"f314211.befcae","type":"ui_group","z":"","name":"Default","tab":"a5efeed4.d5236","order":3,"disp":false,"width":"6","collapse":false},{"id":"7d788f33.2e1a2","type":"ui_tab","z":"","name":"Test","icon":"dashboard","order":6,"disabled":false,"hidden":false},{"id":"a5efeed4.d5236","type":"ui_tab","z":"","name":"Home","icon":"track_changes","order":1,"disabled":false,"hidden":false}]