FdxExecuteDataUnit will not extract text.
If you don't want a cube view, IMHO the easiest approach for this is to create a Data Management step of type Extract Data, which can extract annotations; then parse the resulting csv file with code. All this can be managed in a single rule, with BRApi.Utilities.ExecuteDataMgmtSequence. It might be slower than FdxExecuteCubeView (since we roundtrip to disk), but it's probably easier to maintain (no chance of missing data because of how the CV is shaped).
Alternatively, you can go "low level" and write a CustomCalculation Finance rule that will create databuffers, then cycle through each cell and pull .CellAmount and .DataCellAnnotation from each, saving them in your table. Whether this is slower than Fdx will depend entirely on your coding skills with parallelization.