Non sono sicuro che sia la soluzione, ma certamente questo if è sbagliato:
if (ReturnCodice) dato che ReturnCodice è una stringa non un valore boleano (true/false) pertanto dovrà essere o di verifica valore: if (ReturnCodice=='BBB') oppure pieno/vuoto if (ReturnCodice!='')/if (ReturnCodice=='')