[comp.databases] differences in concatenation v2.0,v2.3 ORACLE SQL*Forms

beverly@ai.cs.wisc.edu (Beverly Seavey (-Kung)) (09/19/90)

The following statement works for me just hunky-dory in SQL*Forms 2.3:

  #COPY 'molecule.'||&SYSTEM.CURRENT_FIELD GLOBAL.curr_atom;

When I use the same line in v2.0, I get the msg:

  IAXCPY: Not enough arguments.

Adding or removing blanks between tokens doesn't seem to change the situation.
I seem to remember reading somewhere that concatenation like that takes an
extra step in version 2.0. Does anyone remember?

tprife@venus.lerc.nasa.gov (Mike Rife (Boeing)) (09/19/90)

In article <11299@spool.cs.wisc.edu>, beverly@ai.cs.wisc.edu (Beverly Seavey (-Kung)) writes...
>The following statement works for me just hunky-dory in SQL*Forms 2.3:
> 
>  #COPY 'molecule.'||&SYSTEM.CURRENT_FIELD GLOBAL.curr_atom;
> 
>When I use the same line in v2.0, I get the msg:
> 
>  IAXCPY: Not enough arguments.
> 
>Adding or removing blanks between tokens doesn't seem to change the situation.
>I seem to remember reading somewhere that concatenation like that takes an
>extra step in version 2.0. Does anyone remember?


In v2.0 I believe that you can not do concatenation in the middle of the #COPY
macro.  Concatenation within macros was added with v2.3.  What you need to do
is:

1:	#Copy &SYSTEM.CURRENT_FIELD :CONTROL.TEMP;
2:	select 'molecule.'||:CONTROL.TEMP
	into :CONTROL.TEMP
	from system.dual
3:	#Copy :CONTROL.TEMP GLOBAL.curr_atom;

NOTE:	TEMP is a temporary, non-database field on page 0 of the CONTROL 
	block.  The names do not matter.  Just copy CURRENT_FIELD inot a
	temporary field on page 0 and then concatenate with a SQL step and 
	COPY the value inot the global variable.

tensmekl@infonode.ingr.com (Kermit Tensmeyer) (09/20/90)

In article <11299@spool.cs.wisc.edu> beverly@ai.cs.wisc.edu (Beverly Seavey (-Kung)) writes:
>The following statement works for me just hunky-dory in SQL*Forms 2.3:
>
>  #COPY 'molecule.'||&SYSTEM.CURRENT_FIELD GLOBAL.curr_atom;
>
>When I use the same line in v2.0, I get the msg:
>
>  IAXCPY: Not enough arguments.
>
>Adding or removing blanks between tokens doesn't seem to change the situation.
>I seem to remember reading somewhere that concatenation like that takes an
>extra step in version 2.0. Does anyone remember?

	Nope, can't doit that way try

	Select 'molecule.' || &System.Current_Field into :blk.buffer
	from dual;
	#copy :blk.buffer GLOBAL.curr_atom;

ah from the 'good ole day's Pre V3.0', ya know their discussing the
advance features of V4.0 including accessing 'Foreign Datatbases'




-- 
Kermit Tensmeyer                        | Intergraph Corporation
UUCP:     ...uunet!ingr!tensmekl	| One Madison Industrial Park
INTERNET: tensmekl@ingr.com		| Mail Stop LR23A2
AT&T:     (205)730-8127			| Huntsville, AL  35807-4201