Based on what you are saying here it feels like it should be enough with:
concat('-1;#', my:CostCenter)
or maybe like so
xdMath:Eval(xdXDocument:GetDOM('BU')/dfs:myFields/dfs:dataFields/d:SharePointListItem_RW, "concat('-1;#', /dfs:myFields/dfs:CostCenter)")
as in the previous solution. But neither of these work. So I've also tried to follow the logic I outlined in the post above
xdMath:Eval(xdXDocument:GetDOM('BU')/dfs:myFields/dfs:dataFields/d:SharePointListItem_RW[d:Title = /my:myFields/my:CostCenter], concat('-1;#', d:ID))
But to no avail.. So I finally also tried to apply the "double eval trick" previously mentioned
xdMath:Eval(xdMath:Eval(xdXDocument:GetDOM("BU")/dfs:myFields/dfs:dataFields/d:SharePointListItem_RW[d:Title = /my:myFields/my:CostCenter], "concat('-1;#', d:ID)"), "..")
But again without success.
Not sure which is the correct way to think of the solution here.. Any pointers?