Like Quisco said, DBC has no convention to handle GLOBAL variables - variables cannot be declared as GLOBALS. In DBC, the closest thing to a GLOBAL variable, is an array. An array will not lose it's value inside or outside of a function.
If you want to return several values of all the same type (float, string, or integer), you can use a single array in a function and dimension it to the number of indexes you need to store your values.
Dim cartesian#(3)
Function coords(x#,y#,z#)
cartesian#(1)=x#
cartesian#(2)=y#
cartesian#(3)=z#
endfunction
The conplexity of the function is up to you, but what ever values are assigned to the array will be carried over outside of the function.
If you want to get fancy, you can simulate a TYPE definition with a memblock. That method will allow you to store multiple data types, indexed within the memblock based on the byte size of the data type. In the case of a string it's indexed by byte size*length .
Enjoy your day.