Hola
Lo mas seguro es que me equivoque pero pienso en voz alta.
Por que no crear un procedimiento aislado al que se le llame desde este procedimiento y que contenga una variable que guarde ese valor.
No conozco el ComPortRxChar, supongo que vendra de los chart o de algun componente determinado, pero si es necesario que envie el resultado con un dato string y otro integer, cual seria el problema de hacerlo con otro procedimiento o funcion?, asi no se necesitaría duplicar el procedimiento.
Bueno, solo opino, ya sabéis, así aprendo.

Saludos