Re: [U2] Universe and triggers

2007-09-11 Thread hemiiim2k
Hi Marcos,

Universe seems hellbent on invoking the entire SQL system in order to put a 
simple trigger on a file.  UniData is MUCH more forgiving in that regard.

With Universe, I have had a certain amount of success making what I call 
'indexed subroutines'  where by an index on a file calls a virtual Dictionary 
subroutine which does, in fact, operate as a rudimentary trigger.  You CANNOT 
affect data going to the actual file record update as you might with an actual 
trigger, but you can write information to a tracking database and then I have a 
background phantom in operation which manages email distribution from the 
triggered events and what not.  I *could* even write back to the originating 
file record that initiated the trigger -- I've closed off the mortal embrace 
between phantom and virtual subroutine -- but that will always have a lag time 
between the actual record update event and the final conclusion of the trigger, 
so I would not consider it a particularly clean solution for true database 
triggering.  It does work well as a tracking and reporting system, though.

Trey


 -- Original message --
From: Marcos Fogaga [EMAIL PROTECTED]
 Hi,
 
  
 
 It is possible create a trigger (subroutine) for a pick file (non SQL
 table)?
 
 On D3 we have CALLX, is there a feature like this in Universe?
 
  
 
 Thanks in advance.
 
  
 
 Best Regards,
 
  
 
 Marcos Fogaca
 
 Integral Sistemas
 
 Sao Paulo / Brazil
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] UD - Open command

2007-08-23 Thread hemiiim2k
You can look at OSOPEN in UniData.  I do not think any flavor of UniData will 
support your 201 error code condition, but I may be wrong.

Also, if you want SYSTEM(11) to work, then I do think you will be better off 
putting a directory entry into the VOC file and opening with a standard open 
clause.


 -- Original message --
From: Bill Haskett [EMAIL PROTECTED]
 I was under the impression that UniData could handle something like:
  
 OPEN 'E:\DataShare\Temp' TO TEMP.FV ON ERROR CRT File abort. ELSE STOP 201,
 'E:\DataShare\Temp'
 SELECT TEMP.FV
 IF SYSTEM(11) THEN
LOOP
   READNEXT ID ELSE EXIT
   ...do something
REPEAT
 END
  
 This worked fine in D3 but it is failing (actually the program just stops) in
 UniData, even though the directory is local and valid.  Am I missing 
 something 
 or am
 I required to create a DIR pointer to the D:\DataShare\Temp local 
 directory
 first?
  
 Thanks,
  
 Bill
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] How to use LOCATE in an I Descriptor

2007-08-12 Thread hemiiim2k
I think Rod already touched on it.  A combination of CHANGE, FIELD, and DCOUNT 
will tell you the position that a particular string falls in a dynamic array; 
without having to drop out to a SUBR.  If that is all you need -- if you don't 
require the logical results from the bi-conditional associated with the 
standard LOCATE syntax, then this will get you a result.

CHANGE the character string to something unique like CHAR(189).  FIELD of 
CHAR(189), taking the first field and then DCOUNT that string.  If you need a 
positional value of sub-values within multi-values, that of course requires 
more fielding and dcounting.

Regards,

Trey

 -- Original message --
From: Marc Harbeson [EMAIL PROTECTED]
 Yea - but if ANYONE knows how to avoid the SUBR it would be Trey Miller...
 
 snicker
 
 -Original Message-
 From: [EMAIL PROTECTED] 
 [mailto:[EMAIL PROTECTED] On Behalf Of Mark Eastwood
 Sent: Thursday, August 09, 2007 3:18 PM
 To: u2-users@listserver.u2ug.org
 Subject: RE: [U2] How to use LOCATE in an I Descriptor
 
 My first thought would be to create an I-descriptor that calls a basic
 subroutine (SUBR) to do the LOCATE and return value.
 
 Mark
 
 
 -Original Message-
 
 Subject: [U2] How to use LOCATE in an I Descriptor
 
 I have someone asking me how to use a LOCATE statement in an I
 Descriptor.  I have never done that and would not know if it is
 possible, or what the syntax is.  Does anyone know if you can do this,
 and what the syntax would be to use the resultant location?
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
 
 
 No virus found in this incoming message.
 Checked by AVG Free Edition. 
 Version: 7.5.476 / Virus Database: 269.11.8/940 - Release Date: 8/6/2007 4:53 
 PM
  
 
 No virus found in this outgoing message.
 Checked by AVG Free Edition. 
 Version: 7.5.476 / Virus Database: 269.11.8/940 - Release Date: 8/6/2007 4:53 
 PM
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] BCI Interface

2007-07-13 Thread hemiiim2k
Thank you David.  I suspected I might be reduced to trying a cast on the server 
side.  I should also mention that I am using the Easysoft driver and I've 
posited the question to them, just to see their take.

Kind regards!

-- Original message -- 
From: David Beahm [EMAIL PROTECTED] 

 I have not found any way to force SQL type compatibility, but I have 
 worked around it by using CAST/CONVERT in the SQL statement to make 
 UniData see the data as a type it did recognize. In my case it was a 
 matter of BigInt not being handled (which is ironic, since U2 doesn't 
 usually fuss about whether something is a string or a number). I don't 
 know if that is going to work for your situation, though. 
 
 HTH, 
 David Beahm 
 
 
  Date: Fri, 13 Jul 2007 05:43:44 -0600 
  From: Trey Miller 
  Subject: [U2] BCI Interface 
  
  Hello, 
  I'm on a system running UniData 6.0. 
  
  I'm attempting to use the BCI to return an SQL table from a 2003 MsSql 
  server. I've established a connection and can execute the SQLExecDirect 
  with a select * from  against several tables with no issue, but 
  any table which includes a binary column fails with an unsupported data 
  type 
  error. The documentation shows that there are provisions for binding 
  SQL.B.BINARY data types when pushing data out of UniData and onto the data 
  source. I'm wondering if there are any provisions for binding to a binary 
  data column when attempting to bring an entire table into UniData through 
  the BCI. I can not seem to find any. 
  
  Thanks in advance! 
 --- 
 u2-users mailing list 
 u2-users@listserver.u2ug.org 
 To unsubscribe please visit http://listserver.u2ug.org/ 
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/