One option I have used before is to use a snippet with getTemplateVarOutput to grab the data I require. The only thing I need to pass to the snippet is the document ID.
OK, I have never used it in conjunction with ditto, but I’m pretty sure you can pass the ditto placeholder [+id+] as a parameter to a snippet call [!getTVdata?&docid=`[+id+]`!]
<?php
global $modx;
$result=$modx-> getTemplateVarOutput($idname=array("theFieldIwant"), $doc_id);
return $result['theFieldiWant'];
?>
Something along those lines perhaps. You can use getTemplatVarOutput to return more than one TV and all other document related things like content or pagetitle too. No testing done so take it with a pinch (or entire shaker) of salt.
Hope that gets you on the right track.
Cheers,
Taff