cander@unisoft.UUCP (Charles Anderson) (05/30/90)
I'm working on a heterogeneous stack with about half a dozen different
backrounds. I have a couple of handlers and functions that store card
names/ids in local variables and then extract fields from the specified
card. This seems to work so long as the current card is of the same
backround type as the card in the local variable. When the backround
type is different, I get error messages about unknown field in
backround type <current card's backround>.
I played around with stuff in the message box and found that the
problem has something to do with having the card id in a variable. The
following is a example of the problem:
put field "foo" of card id 1234 -- works
put "card id 1234" into bar
put field "foo" of bar -- fails
If I go to the card everything works fine, so I have written a function
that looks something like:
function getField fldName cardName
push card
go to cardName
get field fldName
pop card
return it
end getField
So my question is, is there some simple, faster way to make this work without
using my silly function?
--
Charles.
{sun, ucbvax, pyramid, uunet}!unisoft!candermxmora@unix.SRI.COM (Matt Mora) (05/30/90)
In article <3015@unisoft.UUCP> cander@unisoft.UUCP (Charles Anderson) writes: [stuff deleted] >I played around with stuff in the message box and found that the >problem has something to do with having the card id in a variable. The >following is a example of the problem: > > put field "foo" of card id 1234 -- works > > put "card id 1234" into bar > put field "foo" of bar -- fails Have you tried : put "card id 1234 of background id 5678" into bar >So my question is, is there some simple, faster way to make this work without >using my silly function? Try using the above message. I think ids are relative to their background. >Charles. >{sun, ucbvax, pyramid, uunet}!unisoft!cander -- ___________________________________________________________ Matthew Mora SRI International mxmora@unix.sri.com ___________________________________________________________
jdevoto@Apple.COM (Jeanne A. E. DeVoto) (05/31/90)
In article <3015@unisoft.UUCP> cander@unisoft.UUCP (Charles Anderson) writes: [trying to get information from a card specified by ID] > put field "foo" of card id 1234 -- works > > put "card id 1234" into bar > put field "foo" of bar -- fails > >If I go to the card everything works fine, so I have written a function >that looks something like: [function deleted] This is Yet Another Parser Subtlety (doesn't look like a bug, offhand). There are a couple of easy ways to work around: - put just the ID into the variable. You would use put the short ID of this card into bar -- do some stuff put field "foo" of card ID bar - use the ever-useful "do": put "card id 1234" into bar do "put field" && quote & "foo" & quote && "of" && bar -- ========= jeanne a. e. devoto ======================================== jdevoto@apple.com | You may not distribute this article under a jdevoto@well.sf.ca.us | compilation copyright without my permission. ______________________________________________________________________ Apple Computer and I are not authorized | CI$: 72411,165 to speak for each other. | AppleLink: SQA.TEST