Если дословно, то так.
PHP код:
Cmd = _
"void Func(DataAreaId c, int x) \n" + _
"{ \n" + _
" StdAxObject obj; \n" + _
"; \n" + _
" changecompany (c) { \n" + _
" return obj.getSomeValue(x) + sin(x); \n" + _
" } \n" + _
"}"
Ax.ExecuteStmt "runbuf(\"" + Cmd +"\", 'DAT', 1)"
Только вот значения возвращаемые так забрать не получится.
А вот чтобы забирать значения, надо сделать так:
PHP код:
Common.CreateRecord("Common")
Cmd = _
"void Func(DataAreaId c, int x, Common ret) \n" + _
"{ \n" + _
" StdAxObject obj; \n" + _
"; \n" + _
" changecompany (c) { \n" + _
" ret.RecId=obj.getSomeValue(x) + sin(x); \n" + _
" } \n" + _
"}"
Common.ExecuteStmt "runbuf(\"" + Cmd + "\", 'DAT', 1, %1)"
Разумеется, работает только для целых чисел. Результат в Common.RecId.