Difference between revisions of "Indirection (@) issues"

From VistApedia
Jump to: navigation, search
 
Line 1: Line 1:
 
Jim Self
 
Jim Self
  
>Kevin wrote:
+
>Kevin wrote:
>I posted about this once before, and it seems that someone had an
+
>I posted about this once before, and it seems that someone had an
>answer.  But I can't find that post now.
+
>answer.  But I can't find that post now.
 
+
That was me. It was in response to Nancy's question about indirection.
+
That was me. It was in response to Nancy's question about indirection.
 
+
>I am trying to use indirection (@) to execute a callback function.
+
>I am trying to use indirection (@) to execute a callback function.
>But it looks like the indirection is limited to 8 characters.
+
>But it looks like the indirection is limited to 8 characters.
 
+
The form of indirection you are trying is not standard nor is it supported by GT.M.
+
The form of indirection you are trying is not standard nor is it supported by GT.M.
 
+
>
+
>
>e.g.
+
>e.g.
>
+
>
>GTM>w $$SIMPLE^TMGTEST("hello")
+
>GTM>w $$SIMPLE^TMGTEST("hello")
>You said:hello
+
>You said:hello
>GTM>set x="SIMPLE^TMGTEST"
+
>GTM>set x="SIMPLE^TMGTEST"
>
+
>
>GTM>w $$@x@("hello")
+
>GTM>w $$@x@("hello")
>%GTM-E-LABELMISSING, Label referenced but not defined: SIMPLE^T
+
>%GTM-E-LABELMISSING, Label referenced but not defined: SIMPLE^T
>
+
>
>GTM>
+
>GTM>
>
+
>
>
+
>
>How should I do this?
+
>How should I do this?
 
+
 
Try putting the "$$" inside the quotes.
 
Try putting the "$$" inside the quotes.
  
Line 32: Line 32:
 
works for me.
 
works for me.
  
s test="$$ucase^%zString" w @test@("hello kevin")
+
s test="$$ucase^%zString" w @test@("hello kevin")
 
+
HELLO KEVIN
+
HELLO KEVIN

Revision as of 13:17, 5 September 2005

Jim Self

>Kevin wrote:
>I posted about this once before, and it seems that someone had an
>answer.  But I can't find that post now.

That was me. It was in response to Nancy's question about indirection.

>I am trying to use indirection (@) to execute a callback function.
>But it looks like the indirection is limited to 8 characters.

The form of indirection you are trying is not standard nor is it supported by GT.M.

>
>e.g.
>
>GTM>w $$SIMPLE^TMGTEST("hello")
>You said:hello
>GTM>set x="SIMPLE^TMGTEST"
>
>GTM>w $$@x@("hello")
>%GTM-E-LABELMISSING, Label referenced but not defined: SIMPLE^T
>
>GTM>
>
>
>How should I do this?

Try putting the "$$" inside the quotes.

I don't think this is standard either (or documented in GT.M for that matter), but this works for me.

s test="$$ucase^%zString" w @test@("hello kevin")

HELLO KEVIN