Re: [U2] Triggers and Account Copy
Mark, UV stores the location of the index(es) in the file header, so your test files would still point back to the original indexes, and potentially corrupt them as you changed the test data. The SET.INDEX verb allows you to view/update the index location path. I think you should be able to use it on your test data after the cp. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Mon, Jun 1, 2009 at 12:18 PM, Mark Eastwood ma...@afsi.com wrote: Uv 10.2 RH I need to copy a “live” account to a “test” account (i.e. cp –r live test), but the live account has Triggers setup on several files. Should I drop these triggers before copying? Or can they be left alone and work in the new account just fine? I know indexes require some cleanup after the copy, just never had to deal with triggers before. TIA, Mark ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Auto-updating of secondary indices.
On Sun, May 17, 2009 at 7:30 PM, Charlie Noah cwn...@comcast.net wrote: Considering the nature of secondary indexes, and not just Universe, you should never count on an index built on a subroutine to be updated automatically. If Universe does this, it must be magic. ;-) The same goes for any dictionary definition that returns content from another file Charlie, I see the winkie, but still... It is perfectly appropriate to build indexes using I-descriptors and expect them to be updated automatically, e.g. to consistently format a name field for indexing, or to create compound keys, etc. Using I-descriptors (whether or not with SUBR calls) works perfectly and, in my experience, is no more error-prone than indexes on native fields. The fact that U2 secondary indexes are maintained automatically is the whole point: the system does that work for you. I agree that using SUBR or TRANS to utilize data from another file as part of the index is problematic. However, in that case the appropriate index scheme would be to maintain a separate inverted-key type file and maintain said file via a trigger. Frankly, it is a poor design that uses native U2 secondary indexes that need to be rebuilt each night. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] UV 10.1.22; Dynamic File question
My understanding is the when a dynamic file's *total* size exceeds the SPLIT.LOAD threshold, a group (almost certainly not the group you are writing to or just wrote to) will be split. The group(s) chosen to be split are controlled by some secret algorithm, but I don't believe that the largest groups are the ones first chosen to be split. This can be verified by doing a GROUP.STAT on a dynamic file (with poorly hashing keys) and noting that there are many empty groups as well as many overflowing groups. Dynamic files perform well on the total file (*average* group size) level, but still suffer from the same problems as static hashed files regarding poorly hashing keys when you get down to individual groups within the file. If this is not how the splitting process in dynamic files actually works, I would appreciate being enlightened. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Thu, Apr 23, 2009 at 11:47 AM, Martin Phillips martinphill...@ladybridge.com wrote: Hi Allen, If I know in advance that I'm adding a large number of records to a file, is there any way to force the file to grow in advance? You could do this with the MINIMUM.MODULUS parameter but the whole point of dynamic files is that they do their own tuning. Although a dynamic file is unlikely to be as good as a perfectly tuned static file, it will be a lot better than a typical static file that has been left alone for a long while. Another important point is that a split affects only one (or arguably two) groups unlike resizing a static file from modulo N to modulo N+1 which would affect every group. My real point here is that it is usually best to let a dynamic file look after itself. Martin Phillips Ladybridge Systems Ltd 17b Coldstream Lane, Hardingstone, Northampton, NN4 6DB +44-(0)1604-709200 --- 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] Uniobjects
The unirpcservices parameter may be in tenths of seconds; I changed it to 36000 with some success, then changed it to 108000 to really keep the connection open. (No joy when I first tried zero.) /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Tue, Apr 21, 2009 at 11:20 AM, Rex Gozar rgo...@autopower.com wrote: The unishared/unirpc/unirpcservices file has a timeout parameter, defaulting to 3600 seconds. I think you can change it to zero for an indefinite login. Jonathan Leckie wrote: Is it possible to keep a Uniobjects connexion open? Or is it possible to have a trigger that would allow an event that could allow the state change to be seen and re-opened? --- 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] UV to SAP migration disaster
Dude, giyf. http://en.wikipedia.org/wiki/Pointy-Haired_Boss /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: *** GMX Spamverdacht *** Re: [U2] DO/WHILE vs IF THEN
Why not something simple that works everywhere, like loop readnext id else exit ... repeat /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Mon, Mar 30, 2009 at 12:01 AM, Mecki Foerthmann mec...@gmx.net wrote: have you tried LOOP WHILE READNEXT ID DO ? MAJ Programming wrote: LOOP WHILE READNEXT does not work on D3. Mark Johnson - Original Message - From: Keith Johnson [DATACOM] kei...@datacom.co.nz To: u2-users@listserver.u2ug.org Sent: Monday, March 02, 2009 7:38 PM Subject: Re: [U2] DO/WHILE vs IF THEN Mark Johnson suggested the following change Before GOOD.ANS=FALSE LOOP UNTIL GOOD.ANS DO PRINT ENTER 'Y' OR 'N' :;INPUT ANS IF ANS=Y OR ANS=N THEN GOOD.ANS=TRUE REPEAT after LOOP WHILE TRUE DO PRINT ENTER 'Y' OR 'N' :;INPUT ANS IF ANS=Y OR ANS=N THEN EXIT REPEAT These forms all work (Universe 10.2.0) and are progressively shorter than the above LOOP PRINT ENTER 'Y' OR 'N' :;INPUT ANS IF ANS=Y OR ANS=N THEN EXIT REPEAT LOOP PRINT ENTER 'Y' OR 'N' :;INPUT ANS UNTIL ANS=Y OR ANS=N DO REPEAT LOOP PRINT ENTER 'Y' OR 'N' :;INPUT ANS UNTIL ANS=Y OR ANS=N REPEAT LOOP PRINT ENTER 'Y' OR 'N' :;INPUT ANS UNTIL ANS=Y OR ANS=N REPEAT Ray Wurlod was a great proponent of the LOOP WHILE READNEXT ID format. I believe it may not compile on some MV systems. Regards, Keith --- 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/ --- 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] [UV] Deadlock report ?
On UV I don't seem to have a LIST.QUEUE command; is it possible that this is a UD feature? I wish there were a UV equivalent, like the D3 LIST-LOCKQ command. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Mon, Feb 23, 2009 at 10:11 AM, Nick Gettino nick.gett...@enroute911.comwrote: Use this verb. LIST.QUEUE [USERNAME user_name | FILENAME filename | user_number][DETAIL] Synonym LIST-QUEUE Description The ECL LIST.QUEUE command lists processes that currently waiting for locks. If a process is waiting for a lock, LIST.QUEUE displays information about the holder of the lock and processes waiting for the lock. Locks are set by each udt process through the general lock manager (GLM) module. UniBasic commands that check for locks, such as READU and READVU, cause processes to wait for locks to be released before proceeding. Nicholas M Gettino | Director of Development | EnRoute Emergency Systems, an Infor company | office: 813-207-6998 | fax: 678-393-5389 nick.gett...@infor.com | www.enroute911.com -Original Message- From: owner-u2-us...@listserver.u2ug.org [mailto:owner-u2-us...@listserver.u2ug.org] On Behalf Of Jacques G. Sent: Monday, February 23, 2009 11:24 AM To: u2-users@listserver.u2ug.org Subject: Re: [U2] [UV] Deadlock report ? I'm already familiar with the -r option of analyse.shm but it is the equivalent to: LIST.READU EVERY. I only need this part: Active Read Waiters: Owner Waiter Device Inode Userno Userno 107400397041292 671 547 I an extract this part from the output of analyse.shm but this report takes a lot of time producing all of the grouplock and record lock information. Ideally, i'd need a switch to give me only this part + the key or group where the problem is occuring. - Original Message From: David Scoggins dscogg...@gmail.com To: u2-users@listserver.u2ug.org Sent: Monday, February 23, 2009 9:59:29 AM Subject: Re: [U2] [UV] Deadlock report ? Take a look at analyze.shm (see the 'Administering Universe manual), IIRC the -r option in particular should give you just the record locks. On Sun, Feb 22, 2009 at 2:00 PM, Jacques G. jacque...@yahoo.com wrote: Hello, I was wondering if there is a deadlock report feature in Universe. We have web services that need to call legacy subroutines and these sometimes make use of READU clauses without the locked statements. Since our pooled webservices have to run between 14 and 92 transactions a minute these READU statements can cause timeouts for transactions waiting in line. The transactions causing the blockage do not necessarely remain blocked for very long. It can be anywhere from 30 seconds to half an hour however between the time the problem occurs and is detected and reported by our clients. It has usually passed before we can do a LIST.READU EVERY to detect which file is the one being blocked. I am only interested in the list of deadlocks that show blocked users at the end of the LIST.READU command (the list of users running a READU and waiting to obtain the lock) and not the huge GROUP locks report which preceeds it and which takes time to produce. There does not appear to be a switch to LIST.READU to only show the deadlock section. I've thought of running periodic LIST.READU EVERY every 2 minutes but with over 800 users online + the numerous webservices transactions, it just takes to long (over 4 minutes) to produce the list. So I've wondered if there isn't a reporting feature I could turn on so that I could see the deadlocks that occured during the day. This way, I could cross-reference the timeout problems with the deadlock list and see which file being accessed is behind the blockage. The info I'd need is: Time, blocked User, File, Key, Id of blocking user --- 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/ --- 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] [UV] HP, Cron, Como, Execute, Capturing . Not
Hi Tony, I do this all the time on UV 10.1.4 on RH AS 3. I have not seen a conflict with COMO and EXECUTE CAPTURING, except that the COMO records the results of the execute as well as the CAPTURING variable. E.g. EXECUTE SH -c 'ls' CAPTURING DIR.LIST Not only does DIR.LIST contain all the files in the directory, but the COMO records them as well, making for very verbose COMO files! Note that I have not tried the combination of cron + COMO + EXECUTE CAPTURING {+ On Mon, Feb 23, 2009 at 7:37 AM, Tony G 1tlx6h...@sneakemail.com wrote: We have a client on UV/HP-UX running a BASIC routine from a Cron job. The BASIC code shells out from EXECUTE and Captures data from the OS. The Capture is failing and it looks like COMO gets the StdOut that should be directed into a variable. I'm not sure yet if Como plays any part or if all Execute/Capturing instructions will fail when executed from Cron. The code works fine from TCL. I'm also checking to see if there are any other options or middleware, and exactly what's being executed in the Cron line. Until I get more info though, I'd like to know if this is a recognized issue. Under what conditions can we expect something like this to fail?: Execute sh -c ... Capturing result Thanks. Tony Gravagno Nebula Research and Development Info@ removeNebula-RnD.com (Various other email addresses are currently down ... it's Monday...) --- 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] UniData LIMITs
Just goes to show that a problem like this will generate the same solution many times over.My version of Chuck's XSELECT is called BSELECT. e.g. GET-LIST MYLIST (list of customer numbers) BSELECT INVOICES CUST.NO(cust.no is an indexed field in INVOICES file) Once you get used to it, it is indispensable. (I have a D3 version too...) /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 BSELECT * select records with indexed field matching a select list * 09-12-06 asb: UV version * usage: BSELECT target-file indexed-field **$OPTIONS DEFAULT TOT = @SELECTED IF TOT ELSE STOPM this process requires an active select list PROMPT BUF = TRIM(@SENTENCE) TARGETFILE = FIELDNAME = IF FIELD(BUF, ,1) EQ RUN THEN BUF = OCONV(BUF,G2 99) END TARGETFILE = FIELD(BUF, ,2) FIELDNAME = FIELD(BUF, ,3) IF TARGETFILE EQ THEN PRINT Target file to select against: : INPUT TARGETFILE CALL INPUT.TEST(TARGETFILE) ;* test for standard quit type responses IF TARGETFILE EQ OR TARGETFILE EQ QUIT THEN STOP END OPEN TARGETFILE TO FV ELSE STOP 201,TARGETFILE IF FIELDNAME EQ THEN PRINT Indexed field on :TARGETFILE:: : INPUT FIELDNAME CALL INPUT.TEST(FIELDNAME) IF FIELDNAME EQ OR FIELDNAME EQ QUIT THEN STOP END C= 0 ;* original list ids processed C1 = 0 ;* original list ids found in target file via fieldname btree C2 = 0 ;* new ids to target file returned T= TIME() D= DATE() CLR = @(0):@(-4) LIST = 10 * READNEXT ID ELSE GO 999 BSCAN CID,REC FROM FV,ID USING FIELDNAME THEN IF CID EQ ID THEN LIST-1 = REC C1 += 1 C2 += DCOUNT(REC,@AM) END END C += 1 IF MOD(C,1000) EQ 0 THEN CALL COUNTER.SUB(C,T,D,TOT,TXT) ;* calc percent done estimated time until finished PRINT CLR:C: :C1: :C2:TXT: END GO 10 999 * CALL FINAL.COUNT(C,T,D) ;* nnn records processed in yyy seconds = zzz.z per second. PRINT C1: ids found in ':FIELDNAME:' field on ':TARGETFILE:' file. PRINT C2: ':TARGETFILE:' records selected. IF C2 EQ 0 THEN STOP 401 END ELSE OPEN SAVEDLISTS TO SL ELSE STOP 201,SAVEDLISTS LID = BSELECT:SYSTEM(22) WRITE LIST ON SL,LID CHAIN GET-LIST :LID END On Fri, Jan 30, 2009 at 2:24 PM, Charles Stevenson stevenson.c...@gmail.com wrote: I'm entering the fray late here, but I think I have a good, fast, general solution, provided you're willing to index a field. I should probably post it in U2UG's wiki the source code to the XSELECT utility below. Using your example, SELECT CUSTOMERS WITH CLIENTNO = 1234. : 1. Maintain an index on COSTOMERS CLIENTNO. 2. Create a saved or active select list of the 300 client numbers. Others have suggested how via QSELECT, FORM.LIST etc. 3. Use XSELECT utility verb that uses basic SELECTINDEX under the covers to build a select list of all CUSTOMERS keys that are indexed by those 300 client numbers. GET.LIST A.BUNCH.OF.CLIENTS 300 records selected. XSELECT CUSTOMERS CLIENTNO 12,345 records selected --- 12,345 CUSTOMER IDs LIST CUSTOMERS REQUIRE.SELECT ... ( or however you generate the report.) The nut of XSELECT pretty much does this: outlist = '' loop while readnext idxval selectindex idx, idxval from fvar to 0 readlist temp from 0 then outlist-1 = temp repeat but there's logic for oconv, duplicates, saving/getting lists, existing with active select list, error handling, etc. that you'll need if you roll your own. Chuck Stevenson On Thu, Jan 29, 2009 at 11:43 AM, Bill Haskett wrote: We have a report writer that allows users to select the client they want to print any report for. This subroutine builds a list of clients available to any particular user and uses this list to either compare against the clients entered or of all clients are selected then the entire list is used. When this list is placed in an ECL query and executed, e.g SELECT CUSTOMERS WITH CLIENTNO = 1234. ...all has been fine for years. We picked up a new customer who has over 300 clients. When a user tries to run a report for all clients accessible by them the query aborts with... WITH condition stack overflow --- 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] File Delete Logging UV
Um, is it the VOC file that is disappearing, or an item in the VOC file? /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Mon, Dec 29, 2008 at 6:24 AM, Jeff Butera jbut...@hampshire.edu wrote: quote who='Israel, John R.' date='Monday 29 December 2008' Put a DELETE trigger on the VOC file and in the code, specifically test for just the VOC item that keeps getting deleted (i.e. ignore any others). When you get a hit, immediately send your self an E-mail with all the info in question. Remember that triggers must be globally cataloged, but that they can call locally cataloged programs (thus you can have differences between accounts by having the subsequent subroutines different between accounts). I hope this helps. I was thinking the same thing, but this doesn't address the issue if there's an O/S process that's deleting the VOC outside of uv. If the process deleting your VOC is outside of uv, it may be harder to identify. -- Jeff Butera, Ph.D. Administrative Systems Hampshire College jbut...@hampshire.edu 413-559-5556 Where I'm from, we believe all sorts of things that aren't true. We call it 'history'. The Wizard, Wicked --- 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] Speeding up processing through large dynamic table
As has been mentioned, UV optimizes for sequential processing of @AM delimited lists, thus greatly reducing the need for REMOVE and SELECT TO type work-arounds. Not mentioned: SWAP is virtually instantaneous. Whatever is causing the OP's process to slow down, it is not the FOR/NEXT N construct, nor the SWAPs. Here is a quick program that builds a 100,000 attribute array with two values per attribute and then reads every attribute value. The whole thing (build then read) runs in less than two seconds. Note that I first tested it by building LIST as FOR N = 1 TO MAX LISTN = XXX NEXT N Which really did really slow down as it grew. But using LIST := @AM:XXX produced the speedy result documented below. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 RUN BP SB BUILDING... START: 63682.6225 END: 63683.5232 ELAPSED: 0.9007 -- less than 1 second to build 100,000 attributes SIZE: 1277790 DCOUNT: 11 READING... START: 63683.5428 END:63683.7975 ELAPSED: 0.2547 -- about 1/4 sec to read and swap @vm to @am on 100,000 attributes. .L RELLEVEL RELLEVEL 001 X 002 10.1.4 003 PICK 004 PICK.FORMAT 005 10.1.4 CT BP SB SB 0001 *array processing test 0002 MAX = 10 0003 A0 = @(0) 0004 CL = @(-4) 0005 0006 T1 = TIME() 0007 PRINT BUILDING... 0008 PRINT START: :T1 0009 LIST = 0010 FOR N = 1 TO MAX 0011 REC = N 0012 REC1,-1 = N*10 0013 LIST := @AM:REC 0014 IF MOD(N,1000) EQ 0 THEN PRINT A0:N:CL: 0015 NEXT N 0016 T2 = TIME() 0017 PRINT A0:END: :T2:CL 0018 PRINT ELAPSED: :T2-T1 0019 0020 PRINT 0021 PRINT SIZE: :LEN(LIST) 0022 PRINT DCOUNT: :DCOUNT(LIST,@AM) 0023 PRINT 0024 0025 PRINT READING... 0026 T1 = TIME() 0027 PRINT START: :T1 0028 FOR N = 1 TO MAX 0029 REC = LISTN 0030 CONVERT @VM TO @AM IN REC 0031 THING1 = REC1 0032 THING2 = REC2 0033 IF MOD(N,1000) EQ 0 THEN PRINT A0:N:CL: 0034 NEXT N 0035 T2 = TIME() 0036 PRINT A0:END::T2:CL 0037 PRINT ELAPSED: :T2-T1 0038 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] [UD HP-UX] I need to track user logins
Typically last month's wtmp is archived as wtmp.1. You can use the last -f /var/log/wtmp.1 option to view the non-default wtmp file. How many wtmp files are archived is controlled by /etc/logrotate.conf; try man logrotate for more info. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Wed, Nov 5, 2008 at 12:45 PM, jpb-u2ug [EMAIL PROTECTED] wrote: The problem with last is that the file it uses for logging the users wtmp is usually cleared every month, at least on Red Hat. What I do is create a text file from the output of the last command at the end of each month and import the results into the database. That way I have the start and stop time and day for every user that has logged onto the system during the month. This had made it easy to show when a user has been at work and for how long. Jerry Banker -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Lunt, Bruce Sent: Wednesday, November 05, 2008 11:50 AM To: u2-users@listserver.u2ug.org Subject: [U2] [UD HP-UX] I need to track user logins Hi All, I need to provide a report that shows what users have not been on the system for the last 90 days. I don't know how to do this and was hoping that someone out there could help me. Thanks in advance, Bruce Lunt --- 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/ --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Universe, 32bit and file size
I am not sure what you mean when you say ...D3 can only access files 2gig and smaller? Certainly, there is no 2gb limit on D3 files themselves (I have many instances of D3 files with modulos in excess of 1 million). Are you saying that you can't read native OS files from inside D3 when those file(s) are greater than 2gb? I would not suggest trying to read an entire large file into D3 this way. Have you tried the %open, %read functions to read and process the file in reasonably sized chunks, say 10K at a time? You can use %write to build large files this way as well. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Thu, Oct 23, 2008 at 11:01 AM, David Tod Sigafoos [EMAIL PROTECTED]wrote: We have just run into a problem with D3. It is 32bit and can only access files 2gig and smaller. Now I understand that this is a very large file BUT ... sometimes you have to do what you have to do. In looking at the Universe site it looks as if it too is only 32bit. 1) is there a 64bit version of universe .. am i just missing it? the platform would be be linux 64big 2) if there isn't a 64bit version of universe is it possible for universe to stream through files greater than 64bit? Thanks -- DSig ` David Tod Sigafoos ( O O ) ___oOOo__( )__oOOo___ For the traitor appears no traitor -- he speaks in the accents familiar to his victims and he wears their face and their garments and he appeals to the baseness that lies deep in the hearts of all men. He rots the soul of a nation, he works secretly and unknown in the night to undermine the pillars of a city. He infects the body politic so that it can no longer resist -- Marcus Tullius Cicero 743 --- 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] UniVerse and/or AIX caching
You might want to look at the solid state drives (aka MFT) from Doug Dumitru at EasyCo (easyco.com). /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Thu, Oct 23, 2008 at 10:57 AM, Louie Bergsagel [EMAIL PROTECTED]wrote: We have some data transfer processes that take about 9 hours, loading data from our production computer to UniVerse databases used for data analysis. We'd like to speed that up, and have used ramdisk for some improvements, but not enough. Also the time taken to display huge sets of data takes too long (like 11 minutes to LIST) when users expect sub-two-second response time. -- Louie --- 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] [UV] Saving Photos
Bill, I do this for JPEGs, TIFs, PDFs, etc, by just storing the filename in the database. The actual BLOB file remains stored in the host O/S filesystem. You may need to work out your own simple hierarchial directory structure to limit the number of files per sub-directory; in my case I typically assign the BLOB file a sequential name, e.g. 1234999.pdf, then store a maximum of 1000 files per directory as .../1234/1234999.pdf. A standardized subroutine calculates and returns the path to the file based on it's name. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Wed, Oct 8, 2008 at 11:01 AM, Brutzman, Bill [EMAIL PROTECTED]wrote: Is there a way to save a file with a photograph in a U2 database? I seem to remember the idea of a BLOB (Binary Large Object) data type in say MS-SQL. Suggestions would be appreciated. --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] [UV] Universe license usage per account
How about this? MU 0001 * list number of users on system 0002 * 03-20-03 asb 0003 0004 PRINT 0005 PRINT At :oconv(time(),MTH):: 0006 PRINT Current Universe users...:SYSTEM(35) R#4 0007 PRINT Maximum Universe users...:SYSTEM(36) R#4 0008 PRINT Current Linux users..:SYSTEM(37) R#4 0009 PRINT /Scott Ballinger Pareto Corporation Edmonds WA USA 206 7123 6006 On Thu, Sep 25, 2008 at 1:06 PM, Peter Veenhof [EMAIL PROTECTED]wrote: Hi, I was wondering if anyone knows a way to extract the number of licensed users (or rather licenses in use) for a specified Universe Account? Thanks Pete --- 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] Progress Counter for Universe SELECT
This is possible on D3 because the number of items in a file kept in the FCB. To my knowledge no such count is kept anywhere for a Universe file. Note that D3 also has the estimate-count verb (typically renamed ecount by me for easier use), which returns the number of items in a file instantly. FYI, I ran down the user exit in that verb and created my own subroutine ecount.sub(filename,count) so that I can get the number of items in a file from inside a basic program and thus allow a basic select filevar... readnext id loop to display progress. I agree with your users, It is a great D3 feature. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Fri, Sep 19, 2008 at 1:33 PM, JeffG [EMAIL PROTECTED] wrote: D3 allows you to use a (T option at the end of a SELECT statement. This will display a progress counter during the select. Is there a way to do this in Universe? See example below from D3. :SELECT DEBTOR (T Selected Processed Total Completed 6623 6623 7205580 0% We are converting from D3 to Universe and our users really like this D3 feature. -- View this message in context: http://www.nabble.com/Progress-Counter-for-Universe-SELECT-tp19576689p19576689.html Sent from the U2 - Users mailing list archive at Nabble.com. --- 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] Triggers
The work-around that I use (I wonder if there is an easier way to do this?) for non-SQL'd files is: 1. Create your trigger code (update your audit file, verify authorized user, whatever) as an I-type. Have it return a null. 2. Create a NO.NULLS index on the I-type. This will cause the I-type to be called whenever a record is created/deleted/updated in your file. The code in your I-type will be executed, but because the index is NO.NULLS and you are returning null, no actual index updates take place. Below is an example of a trigger I use to track changes to a file. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 SUBROUTINE SAVE.CHANGES.ENVC(ANS,REC,ID) * track changes to the ENVC file * 08-12-04 asb * This subroutine is called from the 'TRIGGER' I-Type in dict ENVC. * A secondary index on ENVC is defined on 'TRIGGER' using the NO.NULLS option. * That forces this subroutine to be called twice when an ENVC record is updated: * the first time with REC = the original record, then again with REC = the new * record (however, if the ENVC record is new, this subroutine is called only once). INCLUDE INC EQU.CHANGES COMMON /SAVE.CHANGES.ENVC/ CHANGES,DICT.CHANGES,OLD.REC,ID2 ANS = IF ASSIGNED(CHANGES) ELSE OPEN ENVC.CHANGES TO CHANGES ELSE OPEN MD TO MD ELSE RETURN READ X FROM MD,ENVC.CHANGES THEN RETURN Q = Q Q2 = xxx Q3 = ENVC.CHANGES wRITE Q ON MD,ENVC.CHANGES OPEN ENVC.CHANGES TO CHANGES ELSE RETURN END OPEN DICT ENVC.CHANGES TO DICT.CHANGES ELSE RETURN OLD.REC = ID2 = [EMAIL PROTECTED]* END * This indexed trigger sub is only called once when filing a new record, so we need * to handle the case of filing a new record, then immediately editing it: IF REC EQ OLD.REC THEN ID2 = ID RETURN END IF ID2 NE ID THEN * first time @record = old rec OLD.REC = REC ID2 = ID RETURN END ELSE * 2nd time @record = new rec NEW.REC = REC ID2 = [EMAIL PROTECTED]* END IF OLD.REC EQ NEW.REC THEN RETURN * * Run MAKE.FIELDS.ARRAY on ENVC and merge in the * ENVC.FIELDS.ARRAY here, then comment out the fields * you don't want to track changes for. Do not $include the * item, or else your commented out fields may get stepped * on if MAKE.FIELDS.ARRAY is run again. * *** * MAKE.FIELDS.ARRAY for file ENVC as of 12-27-07 asb * MAXFIELDS = 168 DIM FIELDNAMES(168) ; DIM CONVS(168) MAT FIELDNAMES = ; MAT CONVS = FIELDNAMES(1) = LINE.IDS FIELDNAMES(2) = PRV.TIN FIELDNAMES(3) = PRV.NAME FIELDNAMES(4) = PRV.SORTKEY FIELDNAMES(5) = PRV.ADDRESS FIELDNAMES(6) = PRV.CITY FIELDNAMES(7) = PRV.ST FIELDNAMES(8) = PRV.ZIP FIELDNAMES(9) = FAM.SSN FIELDNAMES(10) = FAM.NAME FIELDNAMES(11) = FAM.ADDRESS FIELDNAMES(12) = FAM.CITY FIELDNAMES(13) = FAM.ST FIELDNAMES(14) = FAM.ZIP FIELDNAMES(15) = FAM.DOB ; CONVS(15) = D4- FIELDNAMES(16) = PAT.NUM FIELDNAMES(17) = PAT.NAME FIELDNAMES(18) = PAT.DOB ; CONVS(18) = D4- FIELDNAMES(19) = PAT.ADDRESS FIELDNAMES(20) = PAT.REL FIELDNAMES(21) = PAT.NOTES FIELDNAMES(22) = PAT.CITY FIELDNAMES(23) = FAM.SEX FIELDNAMES(24) = PAT.SEX FIELDNAMES(25) = FUND FIELDNAMES(26) = CLAIM.NO FIELDNAMES(27) = ERRMSG FIELDNAMES(28) = PAT.SSN **FIELDNAMES(29) = DATE ; CONVS(29) = D4- FIELDNAMES(30) = USER FIELDNAMES(31) = DCN FIELDNAMES(32) = TYPE FIELDNAMES(33) = PRV.REFNUM FIELDNAMES(34) = NEWPAT FIELDNAMES(35) = HS.ID FIELDNAMES(36) = PRV.PHONE FIELDNAMES(37) = FAM.PHONE FIELDNAMES(38) = PAT.ST FIELDNAMES(39) = PAT.ZIP FIELDNAMES(40) = PAT.PHONE FIELDNAMES(41) = OI.NAME FIELDNAMES(42) = OI.ADDRESS FIELDNAMES(43) = OI.CITY FIELDNAMES(44) = OI.STATE FIELDNAMES(45) = OI.ZIP FIELDNAMES(46) = OI.PHONE FIELDNAMES(47) = OI.DOB ; CONVS(47) = D4- FIELDNAMES(48) = OI.SEX FIELDNAMES(49) = OI.PLAN FIELDNAMES(50) = OI.POLICY FIELDNAMES(51) = TOT.AMT ; CONVS(51) = MR2 FIELDNAMES(52) = REF.NAME FIELDNAMES(53) = REF.PHONE FIELDNAMES(54) = REF.PID FIELDNAMES(55) = REN.NAME FIELDNAMES(56) = REN.ADDRESS FIELDNAMES(57) = REN.CITY FIELDNAMES(58) = REN.ST FIELDNAMES(59) = REN.ZIP FIELDNAMES(60) = REN.PID FIELDNAMES(61) = FAC.NAME FIELDNAMES(62) = FAC.ADDRESS FIELDNAMES(63) = FAC.CITY FIELDNAMES(64) = FAC.ST FIELDNAMES(65) = FAC.ZIP FIELDNAMES(66) = LAB.NAME FIELDNAMES(67) = ADJ FIELDNAMES(68) = PRV.SITE FIELDNAMES(69) = PLAN.NAME FIELDNAMES(70) = STATUS.CODE **FIELDNAMES(71) = STATUS.DATE ; CONVS(71) = D4- **FIELDNAMES(72) = PAID.AMT ; CONVS(72) = MR2, FIELDNAMES(73) = NEWPRV **FIELDNAMES(74) = PAYEE FIELDNAMES(75) = PAT.SOF FIELDNAMES(76) = PAT.ROI FIELDNAMES(77) = PAT.AOB FIELDNAMES(78) = PAYER.NAME FIELDNAMES(79) = PRV.TS FIELDNAMES(80) = PRV.TYPE FIELDNAMES(81) = NOTE **FIELDNAMES(82) = FILENAME FIELDNAMES(83) = FUNDERR FIELDNAMES(84) = PPO.CODE FIELDNAMES(85) = PPO.PHYS FIELDNAMES(86) = REPRICE FIELDNAMES(87) = ORIG.FUND FIELDNAMES(88
Re: [U2] call mysub vs. call @mysub
Ross, I think this is an urban legend. My little test program indicates that in D3 the call @sub version is about 3 times slower than the direct call sub method. (I actually think the logic is the opposite of what you said, the @sub version resolves the cataloged subroutine in the md every time [it has to, as the sub variable in the @sub could change between calls]). In UV they are about the same. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Tue, Aug 26, 2008 at 5:26 PM, Ross Ferris [EMAIL PROTECTED] wrote: Just a quick (dumb?) question that will save me spending 5 minutes writing a little test program (instead I'll spending 15 mins reading responses BARGAIN!!) - and may also be useful for other listeners ... In D3 for subroutines that are called often (either within a program, or a system if you use common) then a construct like mysub = mysub ... ... for I = 1 to lots call @mysub ... next I turns out to be marginally faster than call mysub because the subroutine name is resolved via the MD once on the first call, sub subsequent indirect calls are faster as they avoid the MD/VOC lookup Does this hold true across U2? And/or do you get same sort of benefit from global catalog? Ross Ferris Stamina Software Visage Better by Design! --- 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] gfe check from unix?
I think both uvfixfile and fixtool can be run from unix (you may need to run as root). /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Thu, Jul 31, 2008 at 3:25 AM, doug chanco [EMAIL PROTECTED] wrote: in universe 10.1/10.2 (on aix) is it possible to check for GFE's or BLINK errros without going into universe? any ideas/thoughts/suggestions welcomed! thanks dougc --- 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] group locks and user nbr's
Doug, As Brian mentioned, a group lock is asserted to maintain integrity of the group while the group is being updated, as the order of the items within group may change due to deletes and changes. Here is generic routine I use to perform a readu and resolve who has the record locked - and send them a message. Note the part when I execute LIST.READU and parse the results to get the user that has the record locked. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 - start basic SUBROUTINE PC.READU(RESULT,FILEVAR,ID,ATTRIBUTE,ERR,POS) * standardized subroutine to read item or attribute handle locks * universe version * like READU RESULT FROM FILEVAR,ID ELSE ERR = 1 if ATTRIBUTE is null or zero * else READVU RESULT FROM FILEVAR,ID,ATTRIBUTE ELSE ERR = 1 * POS is column number to start msg display on current line of screen BELL = CHAR(7) CLR= @(-4) ERR= 0 DONE = 0 TRIES = 0 RESULT = WAIT = 10 T = TIME() IF NOT(POS MATCHES 1N) AND NOT(POS MATCHES 2N) THEN POS = 0 IF ATTRIBUTE EQ THEN ATTRIBUTE = 0 * LOOP UNTIL DONE OR ERR DO IF NOT(ATTRIBUTE) THEN READU RESULT FROM FILEVAR,ID LOCKED GOSUB 1000 THEN DONE = 1 ELSE ERR = 1 END ELSE READVU RESULT FROM FILEVAR,ID,ATTRIBUTE LOCKED GOSUB 1000 THEN DONE = 1 ELSE ERR = 1 END REPEAT IF TRIES THEN PRINT @(POS):CLR: RETURN 1000 * IF MOD(TRIES,WAIT) EQ 0 THEN PORT = STATUS() ;* after readu IF PORT NE THEN X = USER :PORT ELSE X = EXECUTE LIST.READU:X CAPTURING LIST.READU.TXT USER = ? MAX = DCOUNT(LIST.READU.TXT,@AM) FOR N = 4 TO MAX L = TRIM(LIST.READU.TXTN) IF FIELD(L, ,9) EQ ID THEN USER = FIELD(L, ,8) DATA please unlock record ':ID:' EXECUTE MESSAGE :USER CAPTURING XXX EXIT END NEXT N IF TRIES EQ 0 THEN WAITED = END ELSE WAITED = OCONV(TIME()-T,MTS) IF WAITED[1,2] EQ 00 THEN WAITED = WAITED[4,5] WAITED = (:WAITED:) END * make sure text msg does not wrap to next line TXT = Record ':ID:' is locked by user :USER:WAITED LEN = LEN(TXT) TOT.LEN = LEN + POS + WAIT IF TOT.LEN GT 79 THEN TXT = TXT[1,(LEN-(TOT.LEN-79))] PRINT BELL:@(POS):CLR:TXT: END TRIES += 1 SLEEP 1 PRINT .: RETURN end basic On Thu, Jun 19, 2008 at 9:51 AM, doug chanco [EMAIL PROTECTED] wrote: Thanks for the response! I was more interested in matching a user to a lock than the file (I have a program that I can call that will return the file name if you pass it a inode), what I was hoping for was a better way of figuring out the user, instead of doing the following: 1. convert the inode into a file name 2. do a fuser -u filename 3. parse the results of 2 to get the user name while thats certainly do able I was hoping for a more elegant pick solution. sorry for not including this earlier but we are on aix 5.2 and universe 10.1 But I am still a little confused on what would set a group lock (I understand the record locks) and why a group lock would need to be set and does it lock the entire file? If we have a pick file called CONTROL and there is a group lock on the CONTROL file what I am curious about would be: 1. why would a group lock be set? 2. does it lock the ENTIRE file? 3. figuring out who set/has the group lock 4. how would it be set (I did not see any reference in the basic manual about setting group locks) 5. best way to release the lock thanks again dougc Brian Leach wrote: Doug To take the first part of your question: The lock table is used for application locks like READU and READL locks, and also for synchronisation locks. The RD and WR locks are synchronisation locks that control access to a group in a file during a read or write operation. these should be transitory only lasting milliseconds unless your system is stuffed or badly maintained. The IN locks are information locks: these are not real locks but point to the existence of a record lock somewhere in that group, to make for quicker checking. The record locks are those from Basic. As for matching up with inodes that has been discussed here various times before. If you are on UNIX you can use the ls -lsi command to list the inodes associated with files if you have a rough idea where it is. You can use find to locate the file with that inode. Under Windows inodes don't exist, they are just emulated by UniVerse, so no help there. Doing an ACCOUNT.FILE.STATS and a LIST.FILE.STATS will show you, but that does take time: something to run overnight. That user number could be a background process or a process that has died part way through a read leaving a lock behind. Brian --- 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] HP 4250dtn printer using PCL commands from Universe Basic program with hex conversion codes ... Tray 3 selection not working
Hi Bob, Here are examples of generic PCL commands that I embed in my print jobs to select paper source by bin: laser.top.bin 001 * select top paper bin for paper feed (should be letterhead) 002 PRINTER ON 003 PRINT CHAR(27):l4H: laser.bottom.bin 001 * select bottom paper bin for paper feed (should be plain paper) 002 PRINTER ON 003 PRINT CHAR(27):l1H: /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Wed, May 14, 2008 at 6:14 AM, Bob Utech [EMAIL PROTECTED] wrote: I am trying to send a report to the HP4250 printer to tray 3 using PCL codes (hex = 1B266C3548), but is not working. It always defaults to tray 2 when jobs are sent from host Universe no matter what PCL tray code I use. Any Microsoft Office print jobs work fine and select the correct trays. All 3 trays are setup : Default paper size = Letter Tray behavior = Use requested tray always tray1: paper size = Envelope paper type = Preprinted tray2: paper size = Letter paper type = Plain tray3: paper size = Letter paper type = Bond I am on Universe 10.1.23 with Windows Server 2003 I have several cases with HP Support concerning this - but they haven't been very helpful - just point me to links to PCL commands (which I already have). I am hoping someone in the U2UG has experience doing this ... Any help would be appreciated. Bob Bob Utech, Senior I.T. Coordinator Information Technology Department (218) 879-3321 ext. 174 Visit RAM on the Web at www.rammutual.com This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error, please notify the system manager and delete this email from your system. If you are not the named addressee you should not disseminate, distribute or copy this email. If you are not the intended recipient you are notified that disclosing, copying, distributing or taking any action in reliance on the contents of this information is strictly prohibited. Warning: Although the company has taken reasonable precautions to ensure no viruses are present in this email, the company cannot accept responsibility for any loss or damage arising from the use of this email or attachments --- 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] Universe/SB+ printing including images
Hi Robin, I use Onmerge (www.onmerge.com) to print embedded images from a Word mail-merge document (the image filenames are one of the merge fields). I costs $79US. The biggest drawback is that you are now relying on Word mail-merge processing in an automated production environment, and there is lots that can go wrong there with compatibility issues among different Windows versions, Office/Word versions, and our friend windows update; but all in all it works pretty well. (I use an Accuterm script to drive Word from the [linux] host in both UV and D3 environments.) /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Mon, Mar 17, 2008 at 5:17 AM, Robin Smith [EMAIL PROTECTED] wrote: We use Universe with SB+ on both Windows and Unix. We have a customer who is looking to print documents to a colour laser printer that not only include normal textual output but also incorporate a grahical image embedded within the document. The graphical image is variable per document and will be specified at run time and picked up from a link to an image file e.g. C:\images\picturexx.jpg. Has anyone any experience of doing this and is there any U2 specific software to facilitate the process? Regards Robin Smith Reflex Data Systems Ltd Scanned by MailDefender - managed email security from intY - www.maildefender.net --- 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] Indexes
There is no function like the T correlative to translate to an indexed file from a dict item, so you will need to do in BASIC as an I-type. The command is BSCAN, e,g. BSCAN BVAL,ID.LIST FROM FV,ID USING FIELDNAME ELSE BVAL = ID.LIST contains an AM delimited list of keys to records in file FV than match ID in FIELDNAME. BVAL is the value of the indexed attribute that matches ID. If there was no match, then BVAL will be the next indexed value past ID, so I always test if BVAL = ID. FV is the open file variable to the indexed file. ID is the value you are searching for in the indexed FIELDNAME. FIELDNAME is the name of the indexed fields in FV (e.g. CREATE.INDEX MYFILE FIELDNAME). A BY SEQ clause is optional, SEQ is either A or D for ascending or descending, (ascending is the default). See HELP BASIC BSCAN I usually loop on BSCAN until BVAL NE ID. I am not sure if that is always necessary. I use I-types that incorporate BSCAN to return values from indexed files all the time. It works great. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Fri, Mar 14, 2008 at 3:03 AM, Dennis Bartlett [EMAIL PROTECTED] wrote: My dumb question for the day (just cant remember how to... and the manual's example is too simplistic...) How do I programmatically get an index value out, eg I have a STOCK file, and a REPAIRS file. Whoever designed this needs their head read, but the repairs file only has the stock code as a reference in the record. I have indexed the repair file on stock code, and need to create a report on the stock file of how many items are under repair. 1. UniverseBASIC code? 2. is this possible from an Itype? --- 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] test for a unix file?
Thanks all; test -e (for files) or test -d (for directories) seems to be what I was looking for. What is DIR() ? I don't find it in HELP BASIC DIR and it won't compile (no matter how I use it I get array DIR never dimensioned). /Scott On Tue, Mar 4, 2008 at 6:33 AM, David A. Green [EMAIL PROTECTED] wrote: I use DIR() Function. Thanks, David A. Green www.dagconsulting.com (480) 813-1725 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Scott Ballinger Sent: Monday, March 03, 2008 6:28 PM To: u2-users@listserver.u2ug.org Subject: [U2] test for a unix file? I have a standard subroutine that I use in UV BASIC when I need to check for the existence (or non-existance) of a unix file: FILE.TEST.SUB 0001 SUB(FILENAME,ANS) 0002 * return ans = 1 if filename exists 0003 * redirect to bit bucket to suppress 'not on file' msg 0004 * filename includes full path to file 0005 EXECUTE SH -c 'ls -d :FILENAME: 2 /dev/null' CAPTURING XXX 0006 0007 FN = FILENAME 0008 CONVERT \ TO IN FN ;* in case we escaped any special characters 0009 0010 IF XXX1 EQ FN THEN ANS = 1 ELSE ANS = 0 0011 0012 RETURN 0013 It works fine, but seems pretty slow, particularly if I am churning though thousands of tests (like from a big select list). Can anyone suggest a faster/more efficient way to test if a unix level file exists from inside UV BASIC ? Thanks, /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- 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/ --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
[U2] test for a unix file?
I have a standard subroutine that I use in UV BASIC when I need to check for the existence (or non-existance) of a unix file: FILE.TEST.SUB 0001 SUB(FILENAME,ANS) 0002 * return ans = 1 if filename exists 0003 * redirect to bit bucket to suppress 'not on file' msg 0004 * filename includes full path to file 0005 EXECUTE SH -c 'ls -d :FILENAME: 2 /dev/null' CAPTURING XXX 0006 0007 FN = FILENAME 0008 CONVERT \ TO IN FN ;* in case we escaped any special characters 0009 0010 IF XXX1 EQ FN THEN ANS = 1 ELSE ANS = 0 0011 0012 RETURN 0013 It works fine, but seems pretty slow, particularly if I am churning though thousands of tests (like from a big select list). Can anyone suggest a faster/more efficient way to test if a unix level file exists from inside UV BASIC ? Thanks, /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Excel downloads
If this is a one-off type of job*, sometimes the simplest thing to do is capture the screen output as a .txt file, then import to excel as fixed length fields. Quick and dirty? Yes, but his would work pretty well for your detail-suppress requirement. I use BREAK-ON fieldname 'L' to remove the extra blank lines between rows. *Actually, I have used this for regular, repeating jobs, by scripting accuterm to capture the screen output as a specific filename in a specific directory, then printing instructions on the screen telling the user how to import into excel. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 /Scott Ballinger On Feb 12, 2008 4:32 PM, IT-Laure Hansen [EMAIL PROTECTED] wrote: Hi Louie, You are correct, it does - however I am dealing among others with a set of files that contain about 85000 individual records: too much for Excel in the first place, and also, updating the MITS data source takes simply too much time, especially when adding break/sort fields. A simple Universe report using DET-SUP takes a couple of minutes to run. The equivalent using MITS Reports with a data source update to grab the latest data literally takes hours. So, I am looking for a solution that allows me to do the equivalent of a LIST DET-SUP in Universe, and convert the output into true Excel. Thanks, Laure Hansen, City of Redwood City Information Technology 1017 Middlefield Road Redwood City, CA 94063 Tel 650-780-7087 Cell 650-207-3235 Fax 650-556-9204 [EMAIL PROTECTED] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Unidata Time in Milliseconds?
Not sure about UD, but on UV I think this is now the default: time() returns .NNN to three decimal places. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Jan 30, 2008 7:15 AM, Kevin King [EMAIL PROTECTED] wrote: I got an interesting request today to store time from Unidata in milliseconds. Other than multiplying the TIME() value to convert it to a millisecond resolution, is there any function in Unidata that returns time in milliseconds? -K2 --- 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] Universe 20.1 itype perf enhancer
Hi John, As you surmised, this is not a new trick. Here is my version: SUBROUTINE OPEN.FILE.SUB(FILENAME,FILEVAR,ERROR) * open filename to filevar, keep opened files in named common * 01-20-01 asb COMMON /OPEN.FILE.SUB/ FILENAMES,FILEVARS(1000) IF ASSIGNED(FILENAMES) ELSE FILENAMES = END ERROR = LOCATE(FILENAME,FILENAMES;POS) THEN FILEVAR = FILEVARS(POS) END ELSE OPEN FILENAME TO FILEVAR THEN IF POS LE 1000 THEN FILENAMESPOS = FILENAME FILEVARS(POS) = FILEVAR END END ELSE FILEVAR = ERROR = 1 CRT @(0):ERROR! can't open :FILENAME:@(-4) END END RETURN In use, you CALL OPEN.FILE.SUB(MYFILE,FILEVAR,ERR) ; IF ERR THEN Interestingly, on D3 this does not seem to have much benefit, where the OPEN function seems faster than the LOCATE. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Jan 24, 2008 6:56 AM, john reid [EMAIL PROTECTED] wrote: I just saw this today, and although i am certain that everyone must know it already, i am including it. For itypes that call subroutines, where the subroutines open lots of files, put a named common in the subroutine that contains what amounts to dimensioned arrays that hold the file vars. Put a switch in so that the files are opened only once. Anecdotally, this appears to work more efficiently than not having the common. If there are reasons why this is ill-advised, I'd like to see that as well. thanks. John COMMON /SETUP.STUFF/MY.FILES(15),FIRST.IN.SWITCH -- john --- 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] selection of multivalued field based on range
How about: select myfile with every qty ge 1000 and le 2000 works for me on UV 10.1.4. Note that in D3, I think your original query would work as you had hoped. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Dec 19, 2007 7:37 AM, Russ Watson [EMAIL PROTECTED] wrote: I want to select records to report if *one* of the multivalues falls within a range. For example: select with qty = 1000 and = 2000 If I use the example I get records where none of the values satisfies the range condition. @ID qty --- --- 11292,500.0 2,500.0 300.0 Russ --- 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] RE: Universe Replication
The problem I ran into with replication (UV on Linux), is that if the subscriber system was off-line or the subscriber process not running, writes on the publisher would cause the writing application to hang and eventually error. Since our goal was to the use subscriber system for reporting as well as testing, this caused a problem whenever the back-up system need to be rebooted or taken off-line. We concluded that we needed something more asynchronous that would allow buffered updates to the back-up system. Other problems, such as managing many published files spread over many accounts, and the fact that type 1/19 files are not replicated, caused us to abandon replication. However, it is likely that IBM has continued to improve replication and my problems may not have been typical. But I am curious if a work-around to allow buffering of updates to the subscriber system was ever developed, because for us that was a stopper. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Dec 10, 2007 4:06 AM, Barry Rogen [EMAIL PROTECTED] wrote: Robin, We attempted (operative word) to embrace Replication for a solution to our needs. We are a little different, in that we are running Unix. We have a D/R system off site and the primary/production box here. Our intentions were similar, to establish a scenario where our second system would not only be our D/R, but allow us to offload many of our reportings from the production system. Data Replication was touted as the solution. A solution that would update our D/R system real time from our production system. If you would like to discuss in further detail, off line, U2's Data Replication solution (in the real world), I would be more that happy to spend some time. Barry Rogen PNY Technologies, Inc. Senior Programmer/Analyst (973) 515 - 9700 ext 5327 [EMAIL PROTECTED] - Far better it is to dare mighty things, to win glorious triumphs even though checkered by failure, than to rank with those poor spirits who neither enjoy nor suffer much because they live in the gray twilight that knows neither victory nor defeat.t. roosevelt -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of LeRoy Dreyfuss Sent: Sunday, December 09, 2007 6:35 AM To: u2-users@listserver.u2ug.org Subject: [U2] RE: Universe Replication Hello Robin, 10.2.x is still pretty new, even though it has been out a whole year now. With most busy organizations, uptake on a new release can be pretty slow, so I doubt many folks have it going in a production environment. When I worked for the U2 group, I did quite a bit of testing with replication. It is ideal for what you propose to use it for. In 10.2, the services changed to improve overall replication performance and recoverability after a network outage. If you've never set it up before, there are some things to consider first. For example, how reliable are the file pointers? Can everyone of the file pointers be opened? Are they referencing files that live in other file systems and not where the account itself exists? Replication expects that the files not be UV/NET files and will skip them when you start looking for files within accounts to publish. Like transaction logging, replication ships with TCL verbs to greatly speed up the selection, publish, and subscribe process when there are many files per account to be replicated. They are documented in the UV 10.2 documentation set. I made improvements to two of those programs-- just ping me off-line if you'd like the updated programs. I intend to deploy replication across my Linux servers, with transaction logging running on each server as well. I am confident with 10.2's ability to handle them both quite well in the scenario I chose to deploy them. I believe I can tell you quite a bit more about the process if you want to write me off-line. Regards, LeRoy -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Robin Smith Sent: Friday, December 07, 2007 10:59 PM To: u2-users@listserver.u2ug.org Subject: [U2] Universe Replication We are about to install Universe File Replication on a Windows 2003 server, using Universe 10.2.3 with replication to a similarly specified Subscriber Server. The subscriber will be used for reporting purposes to reduce the load on the publishing server. Most of the reporting is done via UVODBC. Has anyone had experience of installing Universe Replication in a Windows 2003 server environment? How stable is it? What problems have you encountered along the way? Any help/tips/advice would be much appreciated. Robin Smith Reflex Data Systems Ltd Tel: 01482 881152 Fax:01482 881195 Registered Office: Reflex House, Tokenspire Business Park, Beverley, East Yorkshire, HU17
Re: [U2] To Ad or Not to Ad
On Dec 5, 2007 9:11 AM, Jeff Fitzgerald [EMAIL PROTECTED] wrote: [snip] My point is that the [AD] tags don't add any value for the reader, in my opinion. The world is not so simplistic that a post can be easily classified as [AD] and I find it a bit insulting for someone else to pretend that they can add tags to something that will guide me in my interpretation. [snip] It seems to me that the only relevant [AD] tags are for job openings and product announcements. Note that both of these imply a start of thread or original post. I see no reason to preface legitimate replies with [AD] tags, even if the reply consists of only my product does that. It also seems to me that the only person on this list arguing for more [AD] tags is Charles. Does anyone else actually feel that [AD] tags help to clarify responses in any way; or that that the list has a problem with a lack disclosure of some posters' possible commercial self-interest? I move to stop the [AD] nagging. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] RAID 6 On RedHat Linux On UniVerse 10.1 or 10.2
Brenda, Stick with Raid 10 and as many drives as possible. It has a the performance advantage of mirrored disks for reads and no penalty for writes. The only downside that I see is that it is the most expensive; but what the heck, nowadays disk is cheap and racks are big. My 0.02. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Nov 29, 2007 2:23 PM, Brenda Price [EMAIL PROTECTED] wrote: We are looking at a new server for our future needs (approximately 2nd quarter 2008) and Dell is recommending a RAID 6. Currently we are on UniVerse 10.1 but will probably go to 10.2 on the new server using RedHat Linux (whatever version suits our needs and is available at that time). For the techies who know. Good? Bad? Opinions anyone? All of us here did a What the heck is that when they brought it up (including our Network Administrator). I read a few articles and it is basically a RAID 5 with 2 parity checks. That way if a drive fails and another drive fails or hits a bad sector on a disk while the recovery is in process, it keeps on going with no data lose while a RAID 5 would have loss of data. It has a performance hit of 25-30 % loss on writes as compared to Raid 5. We currently have RAID 1+0. Thanks all! Brenda L Price Senior Programmer Analyst Affiliated Acceptance Corporation Sunrise Beach, MO (800)233-8483 --- 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] Time Travel
I have always presumed that *everyone* was subject to typically-at-least-one-hour delay. Is there anyone out there that gets emails from this list in near real time ? If so, what are you doing differently from the rest of us? /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Nov 26, 2007 11:44 AM, Perry Taylor [EMAIL PROTECTED] wrote: I also experience the hour or so response time getting emails from this list. I would love to see this situation remedied. Perry -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED] Sent: Monday, November 26, 2007 11:56 AM To: u2-users@listserver.u2ug.org Subject: RE: [U2] Time Travel I have to add my two bits. Okay, I don't 'have' to... I use the exact same email group software (majordomo 1.94.5) on my 'home' system with over 7000 subscribers to over 180 different email groups. Our groups never see the delays the members of this group see, so with all due respect, there's something different happening that's causing the lags. We often see as many as 200 emails a second going out of our server, which is an 800mghz PIII with 120GB disk, no mirroring (I know, bad idea) and running fedora core 4 (old...). Our group members get their emails back within seconds, literally. I send an email to this group, and it sometimes takes an hour or so before I see it come back to me. I send an email to one of my groups at home, and I get it back within seconds. Now then, with that said, I've also added bulk_mailer to my email group server so maybe that speeds things up a great deal. I don't know. I did it so I would quit getting the annoying 'too many email connections from your server' errors I see from aol, hotmail, msn, yahoo, netscape, netzero, juno, gmail, . . . ad infinitum of the 'big' email hosts. My point? none really, other than to show that Charles' nice numerically explained _time travel_ doesn't match my real-life experience with my own majordomo server... I don't know why, they just aren't the same. Karl quote who=Symeon Breen Or upgrade to a forum based group - just my standard gripe about email lists ;) -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Moderator Sent: 26 November 2007 06:03 To: u2-users@listserver.u2ug.org Subject: [U2] Time Travel To fix this problem, you'd have to redesign the methods under which the internet manages and routes mail. - Charles Barouch, Moderator --- 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/ -- Karl Pearson Director of I.T. ATS Industrial Supply, Inc. [EMAIL PROTECTED] http://www.atsindustrial.com 800-789-9300 x29 Local: 801-978-4429 Fax: 801-972-3888 To mess up your Linux PC, you have to really work at it; to mess up a microsoft PC you just have to work on it. --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ CONFIDENTIALITY NOTICE: This e-mail message, including any attachments, is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. ZirMed, Inc. has strict policies regarding the content of e-mail communications, specifically Protected Health Information, any communications containing such material will be returned to the originating party with such advisement noted. If you are not the intended recipient, please contact the sender by reply e-mail and destroy all copies of the original message. --- 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] OT: Email encryption
I have a client that uses Tumbleweed to send secure emails. It works at the email server level (these folks use Exchange), intercepting any email message with the string ##SECURE in the subject. It then sends an email to the recipient telling them they have a secure email waiting for them at the client site; they need to connect to the site (via https by clicking a link) and authenticate themselves (or if first time create a user password), then they can view the text + attachments of the original email. Works seamlessly with outlook+exchange and with automatically generated emails from the UV/Linux system that use SMTP to connect to the exchange server. Should also work with other email clients. Not cheap, but pretty cool. Another option would be pgp/gpg if full paranoia mode is required. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On Nov 16, 2007 8:26 AM, Brenda Price [EMAIL PROTECTED] wrote: We sometimes have to email csv files with sensitive information to our clients. Right now we are just setting a password to the zipped files. We really need to encrypt either the whole email or just the attached files. We are using Microsoft Outlook. --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Transfer Files from Universe to Unidata
Bob, A while ago I posted the opposite question to this group (i.e. migrate from Unidata to Universe). Here is a snip of the reply I got from IBM that seems relevant to you: FYI, if this had been the inverse .. migrating a UV account to UniData, it would have been no problem, as UniData comes bundled with a command called UV_RESTORE, which takes a uvbackup sourced account and restores and converts it to UniData file formats. Interestingly, it turned out that there is an explicit UD to UV conversion utility, udtconv introduced in 9.4.1 (but dropped from the 10.0 docs), that will convert a single file or an entire account. Obviously that command is so old and so unused that almost no one on this list except for Doug Miller (by the way, thanks Doug) remembered that it existed (and that would include IBM support!). /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On 10/17/07, bob modrich [EMAIL PROTECTED] wrote: Is there any documentation outlining procedure for transferring files from Universe to Unidata file structure? --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Size of Key Question
In general, the main problem with large, compound keys is that said keys do not hash well; and by hash well I mean that they do not hash to proximate groups, as for example, sequential numeric keys would. There is read-ahead logic and RAM in your disk drive(s). There is read-ahead logic and RAM in your disk controller(s). There is read-ahead logic in the O/S. None of this works very well when records are randomly scattered throughout the file. If I used sequential, numeric keys, and I wanted all the records created yesterday, they would likely all be near each other on the physical disk. When I accessed the first one, the disk/controller/os will have pre-fetched many of the day's other records as well. That makes for speedy access. This is part of the reason why I think long, compound keys are a PITA and are to be avoided. Simple numeric keys will process quicker because they hash better, and are easier to type too. This is often the problem with intelligent keys; by embedding data in the key, you almost always make the key longer and the file hash poorly. IMO it makes way more sense to use simple numeric keys and create real attributes for the data you are tempted to build the key out of. I say this with 20/20 hindsight, as I have designed many systems with large files that use compound keys, every one of which I have come to regret. Roy, you could prove this by writing a program that reads every record in your original file and writes it out to a new file (with the same modulo sep as the original file) using a simple incrementing counter as the key. I will bet that the new file performs better than your original one does, even though it should have more attributes (necessary to accommodate the data values that were embedded in the key to the original file). My 0.02, /Scott Ballinger Pareto Corporation Edmonds, WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Over-coming EDitor shortcomings
On 10/12/07, Baker Hughes [EMAIL PROTECTED] wrote:snip The AE invoked compiler removes the old source when it starts, that way if the compile produces no object, it doesn't run the old object code. At least this is the behavior on UV 10 or higher. I think the UV compiler has always removed the original source; which frankly I find to be a major irritant. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Locks in subroutines
Noel, I use a generic readu subroutine most everywhere (it handles the locked clause, sends msgs, retries, etc) and I don't have that problem: .L RELLEVEL RELLEVEL 001 X 002 10.1.4 003 PICK 004 PICK.FORMAT 005 10.1.4 Perhaps there is a uvconfig setting that affects it? /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
[U2] [UD] create file
Hello group, I am a UV guy and I need some UD assistance. In UV I can OPENSEQ /path/file TO FV ELSE CREATE FV ELSE STOPM nope END Which will create the file if it doesn't exit, after which I can READEQ or READBLK to my heart's content. But UD dies at the CREATE statment. Also, instead of READBLK WRITEBLK it is OSBREAD, OSBWRITE in UD, correct ? Thanks, /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Vote here - Religious Wars
Ok, so let's vote. I agree with Jeff's [OPINION]s and Dawn's comments. My votes: Issue 1. A single, lightly moderated list; moderator to intervene in cases of obvious and egregious abuse. (I don't think anyone actually suggested having an un-moderated list; and I'm sure that _everyone_ appreciates the moderators' contributions, efforts and time volunteered to date in maintaining a professional and pleasant on-line community.) -yes Issue 2. Leave placing of [AD] brackets up to the sensibilities of the poster; moderator intervention typically not required. -yes /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
[U2] UV basic assignment error ?
Here is a weird UV error condition that I just spent way too long debugging: CT BP SB SB 0001 X = 0002 IF X EQ THEN X = Y 0003 PRINT ONE 0004 PRINT TWO 0005 PRINT THREE 0006 PRINT X 0007 Y = A RUN BP SB ONE TWO THREE Program SB: Line 6, Variable X previously undefined. Empty string used. Why does the run-time error happen in line 6 instead of line 2? This is _not_ what I was expecting. In D3: :run bp sb [B10] in program sb, Line 2: Variable has not been assigned a value; zero used. ONE TWO THREE 0 I like the way D3 reports this better. Is this a normal, known UV thing? Perhaps this is just the first time I have ever tripped over it... /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] AIX Argument list too long
This is a common problem, where the shell expands the argument list until it blows up. The most common way around this is to use xargs: http://www.unixreview.com/documents/s=8274/sam0306g/ /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On 8/21/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Hi all. This is a bit off-topic, but I believe the expertise is here. . . I have routines that parse through Unix files in a directory and remove them based on age. If the number of files exceeds some limit I've not been able to narrow down, I get a response from the scripts that it can't do the job because there's too many files in the directory. Does anyone know: 1. what I'm talking about and what causes it? 2. how to solve this through some tunable parameter, preferrably not requiring a kernel rebuild? TIA, -- Karl Pearson Director of I.T. ATS Industrial Supply, Inc. [EMAIL PROTECTED] http://www.atsindustrial.com 800-789-9300 x29 Local: 801-978-4429 Fax: 801-972-3888 To mess up your Linux PC, you have to really work at it; to mess up a microsoft PC you just have to work on it. --- 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] AIX Argument list too long
On 8/21/07, Kevin King [EMAIL PROTECTED] wrote: [snip] cd /ud/TEST/_PH_ find . -mtime +90 -exec rm {} \; With find you're working with one file at a time so you should never hit the limit. Yes, however using find + xargs is more efficient than executing rm on each individual instance of the found file: from http://www.unixreview.com/documents/s=8274/sam0306g/ http://www.unixreview.com/documents/s=8274/sam0306g/... The modern UNIX OS seems to have solved the problem of the *find* command overflowing the command-line buffer. However, using the *find -exec* command is still troublesome. It's better to do this: # remove all files with a txt extension find . -type f -name *.txt -print|xargs rm than this: find . -type f -name *.txt -exec rm {} \; -print Controlling the call to *rm* with *xargs* is more efficient than having the *find* command execute *rm* for each object found. /Scott --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] [UV] Speeding up a big BY.EXP select
On 8/9/07, Womack, Adrian [EMAIL PROTECTED] wrote: Just one thing to be aware of: SSELECT implies BY @ID so the BY @ID in your statement is redundant. Adrian, I don't think that is correct (at least for UV). The implied BY @ID sort is always the last sort performed, e.g. SORT MYFILE BY THING1 BY THING2 BY @ID, so BY @ID BY-EXP THING1 is most definitely not the same as just BY-EXP THING1. What you get by sorting BY @ID then BY-EXP is the sorted mv field within each @ID, much like just sorting the file and listing the mv THING1 field (except that the THING1 field is sorted by within each @ID). However, since you are still turning the entire file and sorting it (whether by the @ID or a mv field) I doubt that the SORT BY @ID BY-EXP is materially faster than the plain SORT BY-EXP. Also, my quick test indicates that when you SELECT BY-EXP, the BY-EXP implies a sort, and the results are the same as SSELECT BY-EXP. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] RE: Cleaner Case Statement
On 7/27/07, MAJ Programming [EMAIL PROTECTED] wrote: [snip] BTW, using IF X = 1 ELSE GOSUB 100 is also very hard to read. Sure it compiles but source code should be readable for the programmers who have to visually interpet these things. EVERY IF should have an THEN as it's predominately a positive test instead of a negative test. Then use IF X # 1 THEN GOSUB 100. By that logic READ REC FROM FILE,ID ELSE ... should be banned as well? I think we are all pretty well conditioned to not be confused by the lack of the THEN clause in this case. I suspect it is mostly what you are used to, and I think you can get used to quite a lot. Sometimes adding extra words to make code more readable has just the opposite effect. It's all really just personal preferences, but it feels more professional to call them standards. my 0.02... /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
[U2] Re: Move data files from Unidata to Universe
UPDATE: Here is a response I received from IBM: Scott, I have checked with our Lab Services (aka consulting) group and they tell me that there have been no requests to migrate a UniData account to UniVerse, and there are no native utilities within UniVerse to do this. They are willing to discuss this with you as a billable engagement. FYI, if this had been the inverse .. migrating a UV account to UniData, it would have been no problem, as UniData comes bundled with a command called UV_RESTORE, which takes a uvbackup sourced account and restores and converts it to UniData file formats. So perhaps there is another way to skin this cat. Is there a way to read/write to UDT files directly from UV? Any and all off-the-wall, out-of-the-box, out-of-left-field, {insert your favorite left-brained-business-creativity-MBA cliche here} suggestions welcome. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 On 7/23/07, Scott Ballinger [EMAIL PROTECTED] wrote: I have a Unidata demo on my pc that I installed along the the PE version of Unidata. I want to test in my Universe/Linux environment. How does one convert a Unidata account to Universe? (I am ok with the ud style dicts, so I just need to convert the data files, indexes? etc.) It has been suggested that uvbackup can do this. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
[U2] Move data files from Unidata to Universe
I have a Unidata demo on my pc that I installed along the the PE version of Unidata. I want to test in my Universe/Linux environment. How does one convert a Unidata account to Universe? (I am ok with the ud style dicts, so I just need to convert the data files, indexes? etc.) It has been suggested that uvbackup can do this. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Error in report generation.
snip ... all uppercase is hard to read. Here's why. Humans don't read by assembling the letters into a word, we read by recognizing the overall image of the printed word and converting it into its meaning. Thus, the incredibly random nature of regular conversation supports this theory. We're used to reading textbooks, letters, magazines with mixed casing and as such, can develop those recognition habits. /snip The other thing that makes lower case easier to read than upper case is that lower case letters have more variability amongst themselves than do upper case, due to ascenders and descenders (e.g. bdfghijklpqrty). The more variation between letters, the quicker one's brain can identify them. (This is obviously a personal preference, perhaps based on how your brain was imprinted when you first learned to read {code}.) Maybe this is why some people find proportional fonts easier to read - those characters vary in width as well as height. Just a thought, /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Mentor Save Command
Mentor is pretty close to generic R83 with some extra verbs. My bet is that R83 verbs like SAVE use the regular R83 options. That said, everyone should be glad to know that Sierra Bravo provides the {www.}d3ref.com url, which is an easy to use help facility for D3 (and R83) commands, syntax, etc. According to Luke Bucklin of Sierra Bravo: The d3ref website is actually communicating in real-time with our D3 server's ref account using XML web services. We don't have to export the data out of D3 so the information you see on the web page is exactly what is in the ref account. Try it, you'll like it! /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Dave Taylor Sent: Wednesday, March 07, 2007 7:54 AM To: u2-users@listserver.u2ug.org Cc: Mark Johnson Subject: [U2] Mentor Save Command On Wed, 7 Mar 2007 09:16:01 -0500 Mark Johnson wrote: Subject: [U2] OT: Mentor SAVE command Options What is the option for the SAVE command on a native Mentor system to skip over hard GFE's. I don't want to fix/truncate them. I just want to log them in the Stat-file so I can get a complete stat-file without someone typing the letter I to Ignore. Mark, My Mentor Pro Reference Manual says that the G option prevents the SAVE process from stopping at all GFEs. When a GFE is detected, the error is logged, the remaining portion of the group is skipped, and the SAVE process continues. hth, Dave Dave Taylor President Sysmark Information Systems, Inc. 49 Aspen Way Rolling Hills Estates, CA 90274 800-SYSMARK (800-797-6275) (O) 310-544-1974 (C) 310-561-5200 (P) 800-339-1497 (F) 310-377-3550 Your Source for Integrated EDI Translation and DataSync Integration www.sysmarkinfo.com IBM Business Partner --- 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] FTP
Hi Nancy, Instead of using Accuterm to ftp from your client pc, I suggest ftp'ing directly from the Universe server. One way would be to build and execute a DOS batch file that includes the windows FTP command, captures the result, and then checks for success in some way. However, there is an alternate {free} FTP client (originally developed for Unix but now also available for Windows) that works great: ncftp and it's command-line variants ncftpput, ncftpget, and ncftpls; available from the ncftp.com web site. I use ncftp (specifically ncftpput and ncftpget) a lot and highly recommend it. It is command-line oriented, thus is very easy to set-up and execute from a Universe basic program. And it is rock-solid reliable. The only drawback is that is does not handle secure ftp (ssl or sftp) type transmissions. But if you don't need that, or you encrypt your files before transmitting as I typically do, then ncftpput and ncftpget are by far the easiest way to send and receive files via ftp from inside of Universe. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Nancy Fisher Sent: Wednesday, March 07, 2007 1:55 PM To: u2-users@listserver.u2ug.org Subject: [U2] FTP I'm using AccuTerm DOSSVC to place a file on remote FTP site. It always shows up exactly like I want. But I need to capture the results so I can automate it (just in case it doesn't go). The Basic program (AccuTerm) DOSSVC uses this syntax: EQU ESC TO CHAR(27) EQU STX TO CHAR(2) EQU CR TO CHAR(13) PRINT ESC:STX:'':CMD:CR The command is: CMD = FTP -s:\\OURSERVER1\Flatfile\FTP.EXPORT\ftpscript1.txt and the ftpscript1.txt is: open ftp.somesite.com ourusername ourpassword ascii cd / send \\OURSERVER1\Flatfile\OURCLIENT\FILETOSEND.EDI bye I don't know if I need to know DOS/FTP or BASIC or AccuTerm syntax to return the result of the transfer absolutely ANYWHERE (variable or file). I am practically clueless on DOS/FTP and have struggled to get this far. Since I can send the file I am very frustrated at not being able to manage the result. I have tried the AccuTerm forum...and no luck so far. We are on Windows/UniVerse. thanks, Nancy [EMAIL PROTECTED] --- 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] FTP
Accuterm can also execute a vb-like script. Here is an example (I got it from the ASENT.COM web site) that executes a WORD mail-merge process. I added a belt-AND-suspenders solution to the timing problem: the script outputs a text string (DONE) at the end, which the calling basic program waits for with an INPUT, after which it also SLEEPS. In retrospect, 5 seconds seems a bit extreme; but this thing has been running for years and years, so I am unlikely to mess with it. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 SUBROUTINE ATWORDMERGE.SUB(DOCUMENT) * THIS SUBROUTINE EXECUTES A PRESET WORD MERGE WITH A DOCUMENT USING ACCUTERM * 19 MARCH 2001 BC EQUATE EM TO CHAR(25) PRINT Now printing document: :DOCUMENT:... : *First create our object variables SCR ='Dim WordApp As Object' SCR = SCR:EM:'Dim WordDoc As Object' SCR = SCR:EM:'Const SendToPrinter = 1' *Make sure errors dont mess us up SCR = SCR:EM:'On Error Resume Next' *Start up word SCR = SCR:EM:'Set WordApp = CreateObject(Word.Application)' *Open our source document SCR = SCR:EM:'Set WordDoc = WordApp.Documents.Open(FileName:=G:\UVWORDMERGE\':DOCUMENT:', ReadOnly:=True)' *Merge the document with our data file SCR = SCR:EM:'With WordDoc.MailMerge' SCR = SCR:EM:'.Destination = SendToPrinter' SCR = SCR:EM:'.SuppressBlankLines = True' SCR = SCR:EM:'.Execute Pause:=False' SCR = SCR:EM:'End With' * clean up SCR = SCR:EM:' WordDoc.Close savechanges:=False' SCR = SCR:EM:' Set WordDoc = Nothing' SCR = SCR:EM:' WordApp.Quit' SCR = SCR:EM:' Set WordApp = Nothing' * output text string back so we'll pause until word has completed SCR = SCR:EM:' InitSession.Output DONE Chr$(13)' PRINT CHAR(27):CHAR(2):'P':SCR:CHAR(13): PROMPT INPUT DONE PRINT SLEEP 5 ;* allow word to completely shut down RETURN --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Index Problem
Hi Brenda, 1. It is probably only necessary to rebuild the index(es) when you have a known corruption issue. I think all indexed fields (I-type or not) are (re-)evaluated with every write; U2 indexes are self-updating. 2. If BAD.ADDR is just used to identify bad addresses, consider changing the I-type to return either 1 or null, and create the index using the NO.NULLS option? 3. However, does the BAD.ADDR field exist for selecting and totaling? Else why not just index the BAD.ADD field itself? It's probably marginally faster to build/maintain an index on a real field than on an I-type field. OT question for the list: is the practice of rebuilding indexes (nightly?) common? Why? I use a lot of indexes on large and active files, and very rarely have to rebuild them. Rebuilding indexes on a periodic basis looks like a little too much of the belt AND suspenders mindset. Are the U2 databases really so un-reliable that we have to resort to these sorts of hacks? (Actually, IMO they are very reliable and no you don't.) /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Brenda Price Sent: Tuesday, February 06, 2007 10:38 AM To: u2-users@listserver.u2ug.org Subject: [U2] Index Problem Last night a process that sleeps until around 2-3 am, then wakes up and does a BUILD.INDEX CUST.MSTR ALL failed. One of the indices BAD.ADDR was locked and failed which stopped all the other indices from building. So when we came in this morning nothing had been done from that point on. I've changed the process to build each index one at a time instead of the ALL option, so if one fails the rest continues, which will slow it down somewhat but is safer. Plus only the indices that are correctives will be rebuilt. This happened before in May 2006 and I am pretty sure that it was the exact index (BAD.ADDR) that hung us. The dict is this: BAD.ADDR 1 I 2 IF BAD.ADD = Y THEN 1 ELSE 0 3 4 51R 6S BAD.ADD 1A 244 3Bad^253Add 4 5 6 7 8 9L 101 On our test system, I've changed BAD.ADDR, deleted the index, created the index, and built it again as I was wondering if it was having problems from using another dictionary item. Once a window of opportunity happens I'll do the same on our live system. 1I 2 IF @RECORD44 = Y THEN 1 ELSE 0 3 4 51R 6S No one really thinks that is going to matter but I'm grasping at straws. Any ideas? Brenda Price Affiliated Acceptance Corporation Sunrise Beach, Missouri --- 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/
[U2] Cron job creates many PH entries
Universe 10.1.4, pick flavor, Red Hat I have a UV phantom cron job that runs every minute. It checks a directory for any inbound files, processes them, then writes them to an outbound directory. My problem is that the PH directory is filling up with DUPCHECK_time_date files (1440 per day). Anyone know how to turn off this feature? Here is the cron job: #!/bin/sh TERM=ansi ; export TERM cd /usr/yyy/XXX /usr/ibm/uv/bin/uv PHANTOM DUPCHECK DUPCHECK is a cataloged basic program in the XXX account. Thanks, /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Cron job creates many PH entries
Hey, BRIEF does exactly what I asked for. But you know what they say: be careful what you ask for! It got me thinking... I guess I like the logging aspect of the PH entries, in case something stops working I have some entrails to sift (or is that tea leaves to read?), anyway, here is what I ended up with (keeps 2 days of logs): #!/bin/sh TERM=ansi ; export TERM cd /usr/yyy/XXX /usr/ibm/uv/bin/uv PHANTOM DUPCHECK # purge ph entries more than 2 days old cd \PH\ find . -mtime +2 -name DUPCHECK* -print | xargs rm Yes, that is kind of an overkill, running the 'rm' every minute instead of once per day; but this way it's all in one place and that much easier to see what's going on when I re-visit this in the memory-impaired future. Thanks to all! /Scott -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED] Sent: Thursday, October 05, 2006 10:36 AM To: u2-users@listserver.u2ug.org Subject: Re: [U2] Cron job creates many PH entries Hi Scott, Have you looked into BRIEF? #!/bin/sh TERM=ansi ; export TERM cd /usr/yyy/XXX /usr/ibm/uv/bin/uv PHANTOM BRIEF DUPCHECK -- Original message -- From: Scott Ballinger [EMAIL PROTECTED] Universe 10.1.4, pick flavor, Red Hat I have a UV phantom cron job that runs every minute. It checks a directory for any inbound files, processes them, then writes them to an outbound directory. My problem is that the PH directory is filling up with DUPCHECK_time_date files (1440 per day). Anyone know how to turn off this feature? Here is the cron job: #!/bin/sh TERM=ansi ; export TERM cd /usr/yyy/XXX /usr/ibm/uv/bin/uv PHANTOM DUPCHECK DUPCHECK is a cataloged basic program in the XXX account. Thanks, /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- 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/ --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] SATA SAN question
I think newer SATA controllers and drives (SATA II) support native command queue (NCQ) requests, which make them comparable to SCSI for server environments (e.g. the 3Ware 9000 series). NCQ allows a drive to re-order commands and process them in proximate (data) order instead of received order. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Allen E. Elwood Sent: Friday, September 22, 2006 2:35 PM To: u2-users@listserver.u2ug.org Subject: RE: [U2] SATA SAN question From what I've heard, scsi is much better than sata for large databases as it sorts the request for data in sector order before beginning retrieval, resulting in better throughput in multi user environments. Sata is fast, but doesn't sort the requests, so it's great for single user systems due to lower cost. But Mongo only pawn in world of data storage ;) -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of George Roehsner Sent: Friday, September 22, 2006 12:40 To: u2-users@listserver.u2ug.org Subject: [U2] SATA SAN question Hi, We are looking at IBM's new DS4200 storage device for use with our unidata database but have been pushed away from SATA by an IBM sales partner. I was wondering if anyone has tested using SATA drives for their database or know of a reason not to. Thanks! George Roehsner Lead Developer Market USA FCU 301.586.3429 Thanks! --- 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/ --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Need help - UV intermittent roving file open error
Thanks for the suggestions. This problem happens after initial login without any logtos. I will take a look at MFILES. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 [demime 1.01d removed an attachment of type application/ms-tnef which had a name of winmail.dat] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
[U2] Need help - UV intermittent roving file open error
I have a little file open subroutine that I use in a lot of places to keep open files in common: OPEN.FILE.SUB 0001 SUB(FILENAME,FILEVAR,ERROR) 0002 * open filename to filevar, keep opened files in named common 0003 * 01-20-05 asb 0004 0005 COMMON /OPEN.FILE.SUB/ FILENAMES,FILEVARS(1000) 0006 0007 IF ASSIGNED(FILENAMES) ELSE 0008 FILENAMES = 0009 END 0010 0011 ERROR = 0012 0013 LOCATE(FILENAME,FILENAMES;POS) THEN 0014 FILEVAR = FILEVARS(POS) 0015 END ELSE 0016 OPEN FILENAME TO FILEVAR THEN 0017 IF POS LE 1000 THEN 0018 FILENAMESPOS = FILENAME 0019 FILEVARS(POS) = FILEVAR 0020 END 0021 END ELSE 0022 FILEVAR = 0023 ERROR = 1 0024 CRT @(0):@(-4):ERROR! can't open :FILENAME 0025 END 0026 END 0027 0028 RETURN 0029 Recently (within the last two weeks) I have started getting the following error: Program SB: Line 69, Read operation failure. [EBADF] Bad file number Line 69 is where I am reading a record from a file variable returned from my open.file.sub. 1. The file that is generating the error is valid: e.g. I can LIST filename 'itemid' etc etc etc from TCL without an error. I can also OPEN FILENAME TO FILEVAR in basic and read without an error. 2. There are typically about 50 - 100 files in my named common file lists, reads to the other files do not generate this error- just the one. 3. The error is consistent anytime I reference that file variable retrieved from named common, even when I don't use the open.file.sub process, until I logoff. If I login again, the error returns, but with a different file. 4. Virtually all the files in my named common file list are q-pointers. 5. FILE.OPEN.SUB has been in place for a few years, these error just started showing up within the last two weeks (have not upgraded anything, to my knowledge, in that time). 6. This is UniVerse on RH EL3: RELLEVEL 001 X 002 10.1.4 003 PICK 004 PICK.FORMAT 005 10.1.4 I tried a little tester program to check all the files in common: SB1 0001 COMMON /OPEN.FILE.SUB/ FILENAMES,FILEVARS(1000) 0002 0003 MAX = DCOUNT(FILENAMES,@AM) 0004 FOR N = 1 TO MAX 0005 PRINT N: :FILENAMESN 0006 READ X FROM FILEVARS(N),TESTME ELSE NULL 0007 NEXT N 0008 Here is the output: RUN BP SB1 1 ENVC 2 DENCLM14 3 DENCLM12 4 DENCLM45 5 DENCLM23 6 DENCLM33 7 DENCLM15 8 DENCLM71 9 DENCLM31 10 DENCLM72 11 DENCLM26 12 DENCLM39 13 DENCLM62 14 DENCLM16 15 DENCLM22 16 DENCLM19 17 DENCLM34 18 DENCLM24 19 DENCLM41 20 MEDCLM26 21 MEDCLM15 22 MEDCLM33 23 MEDCLM19 24 MEDCLM71 25 MEDCLM27 26 MEDCLM16 27 MEDCLM62 28 MEDCLM72 29 MEDCLM34 30 MEDCLM25 31 MEDCLM24 32 MEDCLM45 33 MEDCLM23 34 MEDCLM31 35 MEDCLM68 36 MEDCLM22 37 VISCLM33 38 MEDCLM14 39 MEDCLM41 40 VISCLM34 41 VISCLM07 42 VISCLM62 43 VISCLM72 44 VISCLM71 45 VISCLM31 46 VISCLM25 47 DENCLM07 48 DENCLM21 49 VISCLM16 50 VISCLM19 51 VISCLM24 52 DENCLM68 Program SB1: Line 6, Read operation failure. [EBADF] Bad file number Any suggestions will be greatly appreciated- perhaps the OPEN.FILE.SUB needs to be more robust? I suppose I could do a test read like READ XXX FROM FILEVAR,TEST ON ERROR after opening the file in the OPEN.FILE.SUB, but that doesn't really solve the problem and seems like a lot of overhead. OPEN.FILE.SUB is embedded in a lot of places and I really don't want to have to replace it with discrete file opens everywhere! Thanks, /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Universe file size limits {Unclassified}
[snip] As someone else pointed out, watch out for the standard Unix utilities that do not support files 2G. Ok, since this is at least the 2nd time this has been brought up, can some give some examples of standard unix utilities that do not support files 2GB ? Hasn't Linux had 2GB file support for, like 10 years? Hasn't Windows had 2GB file support since W2K (assuming you are not using FAT16 partitions)? I accept that if you are running a 5 year old version of your O/S you may encounter some problems. But if you are reasonably current and patched, where are the land mines? /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Universe file size limits {Unclassified}
Eugene, We recently ran into the 2GB limit on a file where updates to the file generated errors and the offending {updated} groups were truncated. The simplest solution was to RESIZE the file (not actually changing the size, though) with the 64BIT option. This took about 8 minutes on a semi-active [lunchtime, 100 user] system (making sure no one was using the file in question!). The documentation implies that 64BIT is only valid for dynamic files, however this is not the case, as it works fine for regular hashed files. Note that 64BIT is also an option for CREATE.FILE. We have had no known problems with any linux utilities with files over 2GB, however some UV utilities (uvfixfile for sure) may not work with 64 bit files. (UV 10.1.4, Red Hat AS3.) As a matter of fact, the simplest way to test if a file is 64 bit or not is to try uvfixfile on it- if it fails, it is 64 bit! (as suggested by IBM tech support). /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of HENDERSON MIKE, MR Sent: Wednesday, July 05, 2006 4:13 PM To: u2-users@listserver.u2ug.org Subject: RE: [U2] Universe file size limits {Unclassified} Eugene UniVerse files can go over 2GB if they are created / resized as 64-bit. I have done this on UV 10.0 on Win2K3, it works! You can also use UniVerse distributed files to partition your data so that a set of less-than-2GB files appear as a single logical entity. This is the approach we took rather than go 64-bit. There is a deal of information about both these in the UniVerse Reference Guide PDFs Hope this helps Mike -Original Message- From: [EMAIL PROTECTED] On Behalf Of Eugene Perry Sent: Thursday, 6 July 2006 10:10 To: u2-users@listserver.u2ug.org Subject: [U2] Universe file size limits Hello, Does Universe have a file size limit? We are working on Universe 10.1 on both NT and Linux based systems. It came up in a meeting today about files not being able to go over 2 Gigs. I was wondering if that is a Universe limit or a limit of the OS. I thought that new versions of Linux could now go over the 2 Gig limit on partitions. Thanks Eugene --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ The information contained in this Internet Email message is intended for the addressee only and may contain privileged information, but not necessarily the official views or opinions of the New Zealand Defence Force. If you are not the intended recipient you must not use, disclose, copy or distribute this message or the information in it. If you have received this message in error, please Email or telephone the sender immediately. --- 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] Multiple Data Files
Hi Ron, The most common reason for using multiple data files is to share a common dictionary. Some examples: Customers (main data file) Customers,temp (sample data loads, testing, etc) Customers,archive (old customer records) Etc. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ron Hutchings Sent: Tuesday, May 16, 2006 2:33 PM To: u2-users@listserver.u2ug.org Subject: [U2] Multiple Data Files I came to the Pick world by way fo Prime Information through Universe with the Prime Flavor. I am currently working on an implementation of Universe with the Pick flavor. I have come across examples fo Multiple Data Files in the application and am having a difficult time understanding the purpose of this file structure. Can anyone share some practical uses for these file structures? --- 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] PCL within a form
The way I have done this is to use the PCL macro function; upload the logo to the printer and store it as a macro. Then when you print the form, turn on the macro in overlay mode. You can turn the macro on and off as necessary to handle 2nd pages, etc; when done you delete the macro. You may want to get a PCL book (that's what I ended up doing). Here is some generic BASIC PCL MACRO handling stuff: 0001 SUBROUTINE PC.LASER.MACRO.CONTROL(CODE,RESULT) 0002 * subroutine to control macros on a laserjet 0003 * 06-21-93 asb 0004 * 0005 * CODE: 0 = start macro definition (for last ID specified) 0006 * 1 = stop macro definition 0007 * 2 = execute macro (for last ID specified) 0008 * uses current print environment and leaves it changed 0009 * 3 = call macro 0010 * uses current print environment then restores original 0011 * print environment when through 0012 * 4 = enable overlay mode (for last ID specified) 0013 * uses overlay print environment then restores original 0014 * print environment when through 0015 * 5 = disable overlay mode 0016 * 6 = delete all macros 0017 * 7 = delete all temporary macros 0018 * 8 = delete macro (for last ID specified) 0019 * 9 = make macro temporary (for last ID specified) 0020 * 10 = make macro permanent (for last ID specified) 0021 * 0022 EQU ESC TO CHAR(27) 0023 * 0024 RESULT = ESC:f:CODE:X 0025 * 0026 RETURN 0001 SUBROUTINE PC.LASER.MACRO.ID(ID,RESULT) 0002 * subroutine to specify a macro id on a laserjet 0003 * 06-21-93 asb 0004 * 0005 EQU ESC TO CHAR(27) 0006 * 0007 RESULT = ESC:f:ID:Y 0008 * 0009 RETURN 0010 END HTH, /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED] Sent: Friday, March 03, 2006 3:44 PM To: u2-users@listserver.u2ug.org Subject: Re: [U2] PCL within a form What are the other syntaxes? This didn't work correctly. Karl quote who=Ron White ESC*p0y0X set vertical position to zero esc*p0Y set horizontal position to zero esc*p0X The code changes depending on whether you are using number of rows, number of dots (which is what I am showing) or number of decipoints Ron White [EMAIL PROTECTED] wrote: quote who=George Gallen also try looking for: ESCl0H or ESCl0h (That's ESC--ell-zero) eject page ESCa0G or ESCa0g (That's ESC--a-zero) advance to next side The first l0H was the key for not form feeding. Now I need to figure out how to 'embed' the image and set the print head at 0x0y, which I think is this: ESC:a0r0C If not, does someone know for sure? Thanks, Karl George -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of [EMAIL PROTECTED] Sent: Friday, March 03, 2006 2:28 PM To: u2-users@listserver.u2ug.org Subject: [U2] PCL within a form We have a PCL logo that we'd like to include in an invoice, but when we try sending it, we get a separate page with the logo on it. Here's what we've tried: scanning the logo and then placing it on the 'page' where we want it, then printing it to a PCL file. That is the file we cat to the invoice. It seems that when printing to a PCL file, the top of form and page end are set for us and embedded in the PCL output file. We've seen the ESC:'E' character at both the top and bottom of the PCL file, but removing them doesn't help. Any ideas? TIA -- karl _/ _/ _/ _/_/_/ __o _/ _/ _/ _/_/ _-\._ _/_/_/ _/_/_/ (_)/ (_) _/ _/ _/ _/ .. _/ _/ arl _/_/_/ _/ earson[EMAIL PROTECTED] -- IT Director, ATS Industrial Supply, Inc. http://www.atsindustrial.com Toll-free: 800-789-9300 x29 Direct2Desk: 801-978-4429 Facsimile: 801-972-3888 -- --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ -- karl _/ _/ _/ _/_/_/ __o _/ _/ _/ _/_/ _-\._ _/_/_/ _/_/_/ (_)/ (_) _/ _/ _/ _/ .. _/ _/ arl _/_/_/ _/ earson[EMAIL PROTECTED] -- IT Director, ATS Industrial Supply, Inc. http://www.atsindustrial.com Toll-free: 800-789-9300 x29 Direct2Desk: 801-978-4429 Facsimile: 801-972-3888 -- --- 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] [u2][ud] Poor select performance
And my guess is that selecting a customer with 300 000 records takes about 15 seconds. This is likely normal, and probably as fast as you can expect. Remember, that select (which takes 30 seconds) is building a string of 570 000 ids and delimiters, then passing it (or a pointer to it?) back to you. This will not happen instantaneously, even if everything was already in memory. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 From: [EMAIL PROTECTED] on behalf of [EMAIL PROTECTED] Sent: Wed 2/15/2006 9:13 AM To: u2-users@listserver.u2ug.org Subject: SV: [U2] [u2][ud] Poor select performance Sorry, that didn't help... Thanks anyway Bjvrn Eklund -Ursprungligt meddelande- Fren: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Perry Taylor Skickat: den 10 februari 2006 15:07 Till: u2-users@listserver.u2ug.org Dmne: RE: [U2] [u2][ud] Poor select performance My experience is with UniVerse but I suspect it would suffer from the same thing. It's likely the problem is the high number of records per customer number. You might try indexing the entire key then doing a select on the customer number portion. Something like this maybe (not sure of the UniData syntax) ... CREATE.INDEX A_FILE @ID BUILD.INDEX A_FILE @ID SELECT A_FILE WITH @ID LIKE 66-... OR SELECT A_FILE WITH @ID MATCHING '66-'1N0N Perry Taylor www.zirmed.com -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED] Sent: Friday, February 10, 2006 6:09 AM To: u2-users@listserver.u2ug.org Subject: [U2] [u2][ud] Poor select performance Hi there, we are having very slow respone times on a select statement. We have a file with a total of 5 million records in where the key is like -nn. The first part() is a customer number(numeric) and the second part(nn) is a sequential no. We have created an i-descriptor on the customer number, FIELD(@ID,'-',1). On this i-descriptor we have put an index: Index-Name.. F-type K-type Built Empties Dups In-DICT S/M F-no/VF-expr FAKT.FINR V NumYes Yes Yes Yes S FIELD(@ID,'-',1) Selecting a customer with 570 000 records can take 30 seconds. (example of statement SELECT A_FILE WITH FAKT.FINR = 66) Selecting other indexed values in the same file which gives me 5 records out of the 5 million is very very fast. I've tried to rebuild.index with no improvment in performance. The file doesen't show any sign of level 2 overflow. I am single user on a powerful Sun server with SAN disks. We are on Solaris 8 and Unidata 6.1.10. Shouldn't it be faster than this? Perhaps this is normal and we have to take another approach to get the data we need? Thanks in advance! Bjorn Eklund Faktab Finans AB --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ CONFIDENTIALITY NOTICE: This e-mail message, including any attachments, is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. ZirMed, Inc. has strict policies regarding the content of e-mail communications, specifically Protected Health Information, any communications containing such material will be returned to the originating party with such advisement noted. If you are not the intended recipient, please contact the sender by reply e-mail and destroy all copies of the original message. --- 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/ [demime 1.01d removed an attachment of type application/ms-tnef which had a name of winmail.dat] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] [UV] Callcenter screen pop
John, I have several collection agency customers that run callcenter software (one is on their 3rd system, each time a different vendor o/s) Typically the client software is windows (but some systems have used wyse terminals) and the server software runs on Solaris, Linux, or Windows (we even had one that ran on Pick). In every case, we had the vendor provide the code to interface from their client to mine. On the wyse terminals we used a product called Faceterm to do windowing scripted screen scraping pasting; for PC based clients we have used both Accuterm and Procomm Plus (recently just Accuterm). Since the vendor is providing the client application, I take the view that it is their responsibility to provide the connectivity from their environment to mine. So far every vendor (I have worked with 4 different ones so far) has been able to do this without complaint. Since this always requires changes to the vendors' application, I don't really see any other way to get this done. Neither me nor the vendor is interested in having me hack their source so I can make this modification (and then have them support it?!). As you suggested, the pick application needs to be logged on and the appropriate program started and waiting at an input prompt. The callcenter application changes windows from their window to the accuterm window, then pushes the appropriate text string into my program. From there is it pretty straight forward. When the agent is done they leave the pick application at the input prompt and switch back to the callcenter application window (usually via a programmed function key or mouse click) and tell the callcenter program that they are ready for another call. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of John Hester Sent: Monday, January 09, 2006 3:34 PM To: U2 Users Discussion List Subject: [U2] [UV] Callcenter screen pop We're looking into new call center software and trying to determine to what degree we can integrate incoming call handling with our UV order entry software. Assuming that we've captured either a phone # via caller ID or a customer account number by having them key it in, does anyone know of a way to push this information into a green-screen UV application? The call center software packages we've looked into a Windows based, and we use Accuterm to run our UV applications. The only way I can see this working is if the customer service agent is sitting at the appropriate order entry prompt in the UV application prior to answering the phone (which is acceptable), and the data is then sent to Accuterm (or some other terminal emulator). Has anyone done anything like this? TIA, John -- John Hester System Network Administrator Momentum Group Inc. (949) 833-8886 x623 http://memosamples.com --- 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] making a .csv file into an .xls file?
I think Accuterm can create a legit .xls file on a windows client with the FT utility. This is easily scripted from the UV side. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of George Gallen Sent: Friday, January 13, 2006 11:46 AM To: u2-users@listserver.u2ug.org Subject: [U2] making a .csv file into an .xls file? Our UV system creates an ASCII .csv file for another system to import on a daily basis. The 3rd party software after a recent upgrade now only imports .xls files. Is there an easy way to automate Excel to load the .csv, then save as .xls? Or how much more difficult is it to create the .xls instead of a .csv? I thought about getting one of those programs that records mouse clicks, and create a macro of the conversion (since the filename is the same each day), but wonder if there was something we could do in a batch file and run every day under the Windows scheduler. George George Gallen Senior Programmer/Analyst Accounting/Data Division [EMAIL PROTECTED] ph:856.848.1000 Ext 220 SLACK Incorporated - Delivering the best in health care information and education worldwide. http://www.slackinc.com --- 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] records with unprintable characters
Here is the fastest way I have found to eliminate bad chars in string bad.chars = for n = 1 to 31 bad.chars := char(n) next n for n = 128 to 250 bad.chars := char(n) next n convert bad.chars to in string /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Baker Hughes Sent: Tuesday, December 13, 2005 8:32 AM To: u2-users@listserver.u2ug.org Subject: RE: [U2] records with unprintable characters Carl, We faced this recently with data coming from our E-commerce portal, here's a function we put in our Standard.Variables Include, so we can do this from any program: FUNCTION CLEAN.STRING(STRING.IN) RESULT = '' LEN.STR = LEN(STRING.IN) FOR STR.POS = 1 TO LEN.STR STR.CHAR = STRING.IN[STR.POS,1] DEC.VAL = SEQ(STR.CHAR) BEGIN CASE CASE DEC.VAL LT 32 NULL CASE DEC.VAL LT 126 RESULT := STR.CHAR CASE 1 NULL END CASE NEXT STR.POS RETURN(RESULT) usage - after we receive input from screen, or data load: RESP = CLEAN.STRING(RESP) BakerDOTHughes ATMouserDOTCom -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Carl Sadlier Sent: Tuesday, December 13, 2005 9:18 AM To: u2-users@listserver.u2ug.org Subject: [U2] records with unprintable characters Does anyone have a program or suggestions on how to clean up a file that has control characters and unprintable characters that are not Subvalue,Value or Field markers? Thanks, Carl --- 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/ --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] records with unprintable characters
Sorry Mats, I should read deeper into the stack before jumping in... Didn't notice that you had already suggested the same convert bad.chars to null solution. /Scott --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Emails into AIX
Check out postie at infradig.com ($75). It is a command line mailer; you can send email (with attachments) through any smtp mail server, and you can retrieve/process pop3 or imap mail from anywhere, and even copy/move/delete messages from your imap folders. All command-line, all scriptable, all easy to do from inside U2 or Pick. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED] Sent: Friday, December 09, 2005 7:36 AM To: u2-users@listserver.u2ug.org Subject: RE: [U2] Emails into AIX quote who=Larry Hiscock We've done it on Linux SCO, but not AIX, although the concepts should be the same. Under AIX, the locations and names of the files will undoubtedly be different ;-) There are a couple of issues: 1) I'm not sure I'd expose my application server's to receive email directly from the outside world, unless you're REALLY comfortable with setting up sendmail securely, and even THEN I probably wouldn't do it. If you have an email server, you can receive mail there under an alias, and have it forward to the AIX box behind the firewall. 2) If you want automatic processing, you can setup an alias on the AIX box that pipes the email to a script. Under SCO (at least as of 5.0.5, haven't checked newer releases, although I will be in a couple of weeks), it's just a matter of creating the alias. Under RedHat, you have to place the script to run in /etc/smrsh. RedHat's sendmail will ONLY run scripts in this directory. The script can call other scripts that are outside the sandbox, however. As Glen said, use procmail. The scripts can be run from .forward based on whatever rule you write to parse through the email. Do #1 above, however. 3) Your receiving script (or whatever U2 program it runs) will then need to parse the incoming email for whatever you want it to do. Larry Hiscock Western Computer Services -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Bob Witney Sent: Wednesday, December 07, 2005 2:55 AM To: U2-Users (E-mail) Subject: [U2] Emails into AIX I am happily using sendmail to email from the aix boxes but I need to be able to email into the aix box to trigger automatioc process Is anyone doing this How do I set it up ? Thanks Bob __ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email __ --- 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.1.371 / Virus Database: 267.13.13/195 - Release Date: 12/8/2005 -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.371 / Virus Database: 267.13.13/195 - Release Date: 12/8/2005 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ -- karl _/ _/ _/ _/_/_/ __o _/ _/ _/ _/_/ _-\._ _/_/_/ _/_/_/ (_)/ (_) _/ _/ _/ _/ .. _/ _/ arl _/_/_/ _/ earson[EMAIL PROTECTED] -- IT Director, ATS Industrial Supply, Inc. http://www.atsindustrial.com Toll-free: 800-789-9300 x29 Direct2Desk: 801-978-4429 Facsimile: 801-972-3888 -- --- 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] [UV] is there an equivalent to the UD ALL UniQuery keyword?
Unfortunately, LIST-ITEM is just a raw record dump and does not display field names (just numbers) and does not apply the appropriate conversions for numbers, dates, times, etc. I like letting REVISE build the @REVISE item- why not call it from a trigger whenever the dict is updated? Or you could probably make an I-type VOC item called ALL or @ALL that parsed the dict and displayed all the fields in a pretty way- but that's still a lot of work to re-create something that UD already does for you. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Mats Carlid Sent: Friday, December 02, 2005 12:43 AM To: u2-users@listserver.u2ug.org Subject: Re: [U2] [UV] is there an equivalent to the UD ALL UniQuery keyword? Would LIST.ITEM be an answer ? At least it lists all the fields... -- mats --- 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] C-KERMIT in windows
Why not just use Windows' hyperterminal? I think it has a kermit option. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] on behalf of George Gallen Sent: Mon 11/14/2005 6:36 AM To: u2-users@listserver.u2ug.org Subject: RE: [U2] C-KERMIT in windows if you have an old version of Procomm that will work. One of it's download protocals is Kermit. George -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of David Jordan Sent: Sunday, November 13, 2005 11:14 PM To: u2-users@listserver.u2ug.org Subject: RE: [U2] C-KERMIT in windows Hi Craig [have you tried downloading Kermit from Columbia University?] I looked at it, but the trial downloads some rental software that needs you to be logged in as administrator to install. I am nervous of this particularly after the problems coming from Sony doing the same thing. I did not want to purchase it, as it was for a one off test. I was just wondering if anyone knew of another product. Kermit 95 seemed the only product for windows. Thanks anyway Regards David Jordan Managing Consultant [EMAIL PROTECTED] DACONO Holdings Pty Ltd www.dacono.com.au PO Box 909 Lane Cove NSW 2066 Australia --- 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/ [demime 1.01d removed an attachment of type application/ms-tnef which had a name of winmail.dat] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] UniVerse - file importation
As Gordon mentioned, you can read .dbf files using BASIC. Here is a snippet I dug up from an old program that processed dBaseIV (Foxpro?) files (I think I got the .dbf file-spec from wotsit.org): if first.time then * header.size rec.size can be determined by reading the * header data, but make sure that block size is greater * than the header size. h1 = seq(new.block[9,1]) h2 = seq(new.block[10,1]) header.size = (256*h2)+h1 + 4 ;* was +2? r1 = seq(new.block[11,1]) r2 = seq(new.block[12,1]) rec.size = (256*r2)+r1 first.time = 0 end Header.size tells you where the data records start, rec.size tells you how big each record is; from there on it's just parsing fixed length records. Here are some other ways to get your dBase data: 1. Import to Excel, export as tab-delimited, OPENSEQ from UV. 2. Accuterm can import dBase files directly into Pick (I'll bet Wintegrate can too). /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- Whoa! dBase IV! As I recall that DB was way before ODBC for external access to the data. But IIRC the data files themselves are just text files with fixed length fields. You should be able to access the DB files with UniBasic and READSEQ. The first record in a dBase file is the data definition with the length and name of each field. From there you should be able to parse the records as needed. --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] [OT] BREAKING NEWS
[snip] My solution is simply to filter any mail that contains text like out of office. Unfortunately I miss all the wonderful discussions people have about other people being out of the office... which will now include this one. Or with a name like tronic5... Oh, wrong list! ;) /Scott Ballinger --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Double Indexes
[snip] Does U2 support indexing virtual fields, ie DATE.CUST? I don't think D3 can. Sure, both U2 and D3 support virtual index fields. U2 I type: CUST:.:DATE One caveat I know of is that in D3 you must use A-correlatives to define the index, e.g. Cust.date: a5:.:6 Or A0(call cust.date) Create-index myfile cust.date Select myfile with cust.date eq 12345.] - all records with cust = 12345 Select myfile with cust.date eq 12345.13809 - cust 12345 and date = 10-21-05 However, the fact that the date in cust.date must be specified in internal format reduces the utility of this approach, as does the fact that indexed dates can't be selected using greater than or less than type logic. Selecting by customer and/or date is pretty common; I usually end up creating a separate xref index file with the key = cust dot date and a mv list of myfile ids in attribute 1. Then you can select xref.file with cust = 12345 and with date ge 10-1-05 and le 10-20-05 myfile.ids This is usually pretty fast in itself, and you could always index cust and date in xref.file to make it faster under some circumstances. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 P.s. I did not know that that UV10 supports multiple index queries - very cool, and good to know! --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2][UV] Real-time credit card verification
Try Fred Tuttle at Totalink. /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of John Hester Sent: Tuesday, August 09, 2005 5:36 PM To: U2 Users Discussion List Subject: [U2][UV] Real-time credit card verification Anyone know of a UV-based real-time credit card verification application? TIA, John -- John Hester System Network Administrator Momentum Group Inc. (949) 833-8886 x623 http://memosamples.com --- 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] Text extraction.
Bill: [snip] D3 doesn't allow a SELECT to create a READNEXT list from an array so REMOVE is all D3 can use. [/snip] Are you saying that... SELECT DYN.ARRAY TO MYLIST LOOP READNEXT THING FROM MYLIST ELSE EXIT REPEAT ...does not work in D3? I think you are mistaken. My experience is that it works most excellently in D3, AP, and even R83- as a matter of fact, I think it probably works more consistently across all mv platforms than REMOVE. Are there any mv platforms that it doesn't work on? There is one caveat though: DYN.ARRAY must be @AM delimited (else you can CONVERT @VM TO @AM IN DYN.ARRAY first). /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] THE variable names
It is not surprising that the pick market has a bit of a dinosaur-esqe image, as it would seem that many of us are still coding around bugs that were fixed 20 or more years ago. I can't speak for others, but it seems to me that 1985 was ONE HELL OF A LONG TIME AGO as regards to the computer industry. New functions and syntax get added to the language for good reasons. (Speed, standardization, simplicity, etc.) Use them! I still see new code using: CNT = COUNT(REC,CHAR(254))+(REC NE ) or even worse LOCATE('[EMAIL PROTECTED]',REC;CNT) ELSE CNT = CNT - 1 I guess old habits die hard. Not wanting to start a flame war, but come on guys... /Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Anthony W. Youngman Sent: Tuesday, July 19, 2005 4:30 PM To: u2-users@listserver.u2ug.org Subject: Re: [U2] THE variable names In message [EMAIL PROTECTED], [EMAIL PROTECTED] writes Not directed at you Mark, but someone mentioned that Remove has been around a long time. Not so. REMOVE was not added to the ADDS environment until perhaps around the mid 80s or so. And I still find it much more confusing that simply SELECTing a variable to another variable. That to me is more intuitive. And DCOUNT was added to INFORMATION at about the same time. It certainly wasn't there when I started using it in 85. I suspect this was due to the SPECTRUM standardisation attempts. Cheers, Wol -- Anthony W. Youngman [EMAIL PROTECTED] 'Yings, yow graley yin! Suz ae rikt dheu,' said the blue man, taking the thimble. 'What *is* he?' said Magrat. 'They're gnomes,' said Nanny. The man lowered the thimble. 'Pictsies!' Carpe Jugulum, Terry Pratchett 1998 Visit the MaVerick web-site - http://www.maverick-dbms.org Open Source Pick --- 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/
[U2] BP file ownership problem (linux)
After editing a program in BP the owner and group of the file gets changed to user:user. This didn't use to be problem, as all programs in BP were set to 666, but now that we have implemented a minimal level of security, the BP programs are set to 664 with owner and group typically set to user:uv (the programming staff has membership in the uv group). What happens is that after user XXX edits a program, since the owner:group gets changed to XXX:XXX no one else can update that program until either XXX or someone as root chowns the file back to the uv group. This happens with all editors: ED, WED, etc. Is there a Universe setting or user setting that will prevent changing the owner and group setting on a file after editing it? (UV 10.1.4, RHEL 3). Thanks, Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] BP file ownership problem (linux)
Thanks John, your second option was exactly what I was looking for. I had changed everyone's primary group to uv as an interim fix, but didn't feel that was the optimal solution. Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] I'm in an Array quandry, any suggestions...
In UV at least (not sure about UD) attribute processing has improved dramatically since the old days, to the point where it is essentially instant. Try this: CT BP ATTRIBUTE.TEST ATTRIBUTE.TEST 0001 * test attributes vs values in large array 0002 * 05-12-05 asb 0003 0004 DIM DLIST(1) 0005 FOR N = 1 TO 1 0006 DLIST(N) = N 0007 NEXT N 0008 0009 PRINT COUNTING DIMS.: 0010 T = SYSTEM(9) 0011 FOR N = 9000 TO 1 0012 X = DLIST(N) 0013 NEXT N 0014 PRINT SYSTEM(9)-T 0015 0016 LIST = 0017 FOR N = 1 TO 1 0018 LISTN = N 0019 NEXT N 0020 0021 PRINT COUNTING ATTRIBUTES...: 0022 T = SYSTEM(9) 0023 FOR N = 9000 TO 1 0024 X = LISTN 0025 NEXT N 0026 PRINT SYSTEM(9)-T 0027 0028 0029 CONVERT @AM TO @VM IN LIST 0030 PRINT COUNTING VALUES...: 0031 T = SYSTEM(9) 0032 FOR N = 9000 TO 1 0033 X = LIST1,N 0034 NEXT N 0035 PRINT SYSTEM(9)-T 0036 RUN BP ATTRIBUTE.TEST COUNTING DIMS.0 COUNTING ATTRIBUTES...0 COUNTING VALUES...280 .X 01 RUN BP ATTRIBUTE.TEST COUNTING DIMS.0 COUNTING ATTRIBUTES...0 COUNTING VALUES...250 .X 01 RUN BP ATTRIBUTE.TEST COUNTING DIMS.0 COUNTING ATTRIBUTES...0 COUNTING VALUES...240 .X 01 RUN BP ATTRIBUTE.TEST COUNTING DIMS.0 COUNTING ATTRIBUTES...0 COUNTING VALUES...250 .L RELLEVEL RELLEVEL 001 X 002 9.6.1.14 003 PICK 004 PICK.FORMAT 005 9.6.1.14 It seems to me that the speed advantages of dimensioned arrays are no longer valid. BTW, converting VMs to AMs in even the largest array (like 100,000 elements) is nearly instant, and the speed benefits of processing attributes vs values is so large that if you have old applications that have VM delimited lists (I used to structure lists that way) you should (if possible) convert to AMs first, then convert back to VMs before putting the data back. Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Roger Glenfield Sent: Friday, May 13, 2005 12:47 PM To: u2-users@listserver.u2ug.org Subject: Re: [U2] I'm in an Array quandry, any suggestions... Have you ever compared performance between dynamic and dimensioned arrays, or are you just saying that you've never notice problems but have never tried dimensioned arrays? I've seen it make a HUGE difference in Pick, UniVerse, and UniData. If you reference many elements of a dynamic array many times, you'll burn a lot of CPU cycles just to locate the data. When you reference an element of a dimensioned array, it's stored in separate address space, and is immediately referenced. I have a standard way to avoid problems with the last attribute folding into the highest array element. Just dimension the array one element larger than the highest attribute you reference in the program. So if the highest attribute you reference is number 72, dimension the array at 73 or higher. Where I used to work, we had an automated process that created file definitions, including standard equates and the code to dimension arrays. We always created the arrays at one more than the highest attribute, and never had problems. This won't be necessary in environments where the extra attributes are placed on element zero, but it won't hurt anything, either. That way your code will be portable. Payback during 2nd generation Pick was 10-20 attributes. Back then, the problem was to not oversize because it slowed down the read/writing of the blank attributes. Didn't we hear/read recently that the new compiler and/or run time machine is keeping track of individual attribute marks in dynamic arrays, so that a full string search is not necessary every time? Roger --- 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] OpenOffice.org 1.9.100 and UniVerse JDBC
Not sure what your point was, but William Gates Sr is a Seattle lawyer, not Washington DC, now likely retired. I think he is currently serving as a co-chair of the Bill Melinda Gates Foundation, also in Seattle. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED] Sent: Tuesday, May 10, 2005 3:05 PM To: u2-users@listserver.u2ug.org Subject: RE: [U2] OpenOffice.org 1.9.100 and UniVerse JDBC Billy Gates daddy is/was a lawyer with a high powered Washington DC law offices. Those lawyers wrote most of the verbage that Billy had IBM sign. Advantage Game Point - William Billy-boy --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Integer Conversion Codes
How about MR1 ? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Brutzman, Bill Sent: Wednesday, May 04, 2005 2:30 PM To: 'u2-users@listserver.u2ug.org' Subject: [U2] Integer Conversion Codes Our UV v8.3 system uese MD1 to represent hours in tenth-of-hour increments. The new UV indicates Conversion MD1 is incompatible with an integer datatype. How best to fix this? --Bill -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of Brutzman, Bill Sent: Wednesday, May 04, 2005 1:17 PM To: 'u2-users@listserver.u2ug.org' Subject: [U2] VOC Out-Of-Date Error Message Using HP-Ux 11i with UniVerser 10.1, I get the following error message. How can this problem be fixed? --Bill Your VOC is out of date. Update to current release (Y/N)?y Your VOC is configured for Prime Information compatibility Updating your VOC file. (Each * = 10 records) 194 item(s) were removed from your VOC file and placed in file TEMP to prevent them from being overwritten. Updating your D_VOC file. (Each * = 10 records) * 11 item(s) were removed from your VOC file and placed in file DICT TEMP to prevent them from being overwritten. UniVerse Command Language 10.1 (c) Copyright IBM Corporation 2003. All rights reserved. METAL logged on: Wed May 4 12:48:18 2005 --- 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/ --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Integer Conversion Codes
Bill, I must be missing something... I don't seem to have a problem with MD1: RELLEVEL 001 X-type - The RELEASE LEVEL of this account 002 10.1.4 003 ADMIN 004 005 10.1.4 CT BP SB SB 0001 10 * 0002 INPUT X 0003 IF X EQ THEN STOP 0004 PRINT OCONV(X,MD1) 0005 PRINT ICONV(X,MD1) 0006 GO 10 RUN BP SB ?100 10.0 1000 ?1 0.1 10 ?R R Seems to work as expected? (this was in the uv account) Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Brutzman, Bill Sent: Thursday, May 05, 2005 2:09 PM To: 'u2-users@listserver.u2ug.org' Subject: RE: [U2] Integer Conversion Codes Excellent... Is there an easy way to change it (get back) to Reality ? --Bill -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of Ken Hall Sent: Thursday, May 05, 2005 4:35 PM To: u2-users@listserver.u2ug.org Subject: RE: [U2] Integer Conversion Codes Bill - If you were running in REALITY flavor, the MD1 conversion would work. Ken At 12:53 PM 5/5/2005, you wrote: I will look into it. I am surprised that the original post did not seem to create any controversy. That apparent UV backward compatibility was not preserved... I find staggering. It appears that I need to print out the latest tech manuals in this area. Thanks for writing. --Bill -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of Scott Ballinger Sent: Thursday, May 05, 2005 3:26 PM To: u2-users@listserver.u2ug.org Subject: RE: [U2] Integer Conversion Codes How about MR1 ? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Brutzman, Bill Sent: Wednesday, May 04, 2005 2:30 PM To: 'u2-users@listserver.u2ug.org' Subject: [U2] Integer Conversion Codes Our UV v8.3 system uese MD1 to represent hours in tenth-of-hour increments. The new UV indicates Conversion MD1 is incompatible with an integer datatype. How best to fix this? --Bill --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] UV on Linux
Here are some tweaks I made: (uv 9.6.14, rh7.0) in /etc/rc.local: # increase max files kernel parameter echo 8192 /proc/sys/fs/file-max in uvconfig: # 11-19-02 asb: changed from default value of 12 to 36 re: spooler over-write issue # 01-28-05 asb: changed to 300 per Mat at IBM support. MFILES 300 Those are the only ones that come to mind... Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jerry Banker Sent: Friday, April 29, 2005 11:49 AM To: u2-users@listserver.u2ug.org Subject: [U2] UV on Linux We are finally moving our UV off our Sun Solaris 8 System and moving to Redhat on a Dell system. Many of you have been on Linux for awhile so tell me, how was your conversion? Did you have to tweak any configuration parameters? Any pitfalls we should know about? We usually run around 100 user sessions. Jerry Banker --- 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] Triggers docs?
Here is link that might be helpful: (works for both UV UD) http://www.mindspring.com/~tpackert/unidata_tricks.htm I have used the index-trigger method to track and record all changes to a file. It seems to work well; the performance hit has been negligible. If anyone is interested I will post the code. The only gotcha was figuring out how many times the TRIGGER subroutine was called, and what my RECord variable contained each time. Here is the note at the top of the subroutine regarding this: SUBROUTINE SAVE.CHANGES.MYFILE(ANS,REC,ID) * This subroutine is called from the 'TRIGGER' I-Type in dict MYFILE. * A secondary index on MYFILE is defined on 'TRIGGER' using the NO.NULLS option. * That forces this subroutine to be called twice when a MYFILE record is updated: * the first time with REC = the original record, then again with REC = the new * record (however, if the MYFILE record is new, this subroutine is called only once). Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Dan Fitzgerald Sent: Friday, March 11, 2005 10:15 AM To: u2-users@listserver.u2ug.org Subject: [U2] Triggers docs? The manual is a bit skimpy on triggers. Any supplemetal docs around? We're trying to track updates to a file; individual items have gone missing lately. No SQL involvement at all. --- 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] Indexing issue
Not necessarily so... An index on the primary key will not only allow you to sort or sselect the file by that key instantly, but also allow quick selects on partial keys (e.g. select myfile with key = 12345]). Admittedly esoteric, but on occasion handy. Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Allen Egerton Sent: Friday, March 11, 2005 12:08 PM To: u2-users@listserver.u2ug.org Subject: Re: [U2] Indexing issue If the primary key is indexed, that's pretty much a waste of time. Indexing PART of the primary key on the other hand would be useful. You might consider creating an I-Type dictionary item that's @ID[1,3], and then indexing that field. That would work rather quickly. --- 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] Triggers docs?
The trigger is normally called twice: the first time you get the original @RECORD, the second time the new @RECORD. If an item is new or being deleted, then the trigger is called only once. I use named common to track of where I am and to save old @RECORD, so that I can test: if this is not a new item, and old @RECORD is null, then this must be a delete. Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Adrian Matthews Sent: Friday, March 11, 2005 1:28 PM To: u2-users@listserver.u2ug.org Subject: RE: [U2] Triggers docs? How do you track a record being deleted from the file though? The real trigger mechanism fires with INSERT, UPDATE or DELETE. If memory serves this type of pseudo-trigger can't differentiate between a delete and an insert/update. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Scott Ballinger Sent: 11 March 2005 20:37 To: u2-users@listserver.u2ug.org Subject: RE: [U2] Triggers docs? Here is link that might be helpful: (works for both UV UD) http://www.mindspring.com/~tpackert/unidata_tricks.htm I have used the index-trigger method to track and record all changes to a file. It seems to work well; the performance hit has been negligible. If anyone is interested I will post the code. The only gotcha was figuring out how many times the TRIGGER subroutine was called, and what my RECord variable contained each time. Here is the note at the top of the subroutine regarding this: SUBROUTINE SAVE.CHANGES.MYFILE(ANS,REC,ID) * This subroutine is called from the 'TRIGGER' I-Type in dict MYFILE. * A secondary index on MYFILE is defined on 'TRIGGER' using the NO.NULLS option. * That forces this subroutine to be called twice when a MYFILE record is updated: * the first time with REC = the original record, then again with REC = the new * record (however, if the MYFILE record is new, this subroutine is called only once). Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Dan Fitzgerald Sent: Friday, March 11, 2005 10:15 AM To: u2-users@listserver.u2ug.org Subject: [U2] Triggers docs? The manual is a bit skimpy on triggers. Any supplemetal docs around? We're trying to track updates to a file; individual items have gone missing lately. No SQL involvement at all. --- 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/ The information contained in this email is strictly confidential and for the use of the addressee only, unless otherwise indicated. If you are not the intended recipient, please do not read, copy, use or disclose to others this message or any attachment. Please also notify the sender by replying to this email or by telephone +44 (0)20 7896 0011 and then delete the email and any copies of it. Opinions, conclusions (etc.) that do not relate to the official business of this company shall be understood as neither given nor endorsed by it. IG Markets Limited and IG Index Plc are authorised and regulated by the Financial Services Authority and, in Australia, by the Australian Securities and Investments Commission. --- 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] Triggers docs?
I should think a little longer before pressing send... It's not that easy to catch a delete using this kind of trigger. You can test for a new record by trying to read it, if it's not there then this is a new update. But since the trigger is called only once for a delete, it gets pretty ugly to trap for this condition. The best answer I can come up with on a Friday afternoon is treat every first pass as a delete, then un-do whatever you did to track the delete on the second pass (if there is one). That is a particularly heinous solution, however. There must be a better way to do this. Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Adrian Matthews Sent: Friday, March 11, 2005 1:28 PM To: u2-users@listserver.u2ug.org Subject: RE: [U2] Triggers docs? How do you track a record being deleted from the file though? The real trigger mechanism fires with INSERT, UPDATE or DELETE. If memory serves this type of pseudo-trigger can't differentiate between a delete and an insert/update. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Scott Ballinger Sent: 11 March 2005 20:37 To: u2-users@listserver.u2ug.org Subject: RE: [U2] Triggers docs? Here is link that might be helpful: (works for both UV UD) http://www.mindspring.com/~tpackert/unidata_tricks.htm I have used the index-trigger method to track and record all changes to a file. It seems to work well; the performance hit has been negligible. If anyone is interested I will post the code. The only gotcha was figuring out how many times the TRIGGER subroutine was called, and what my RECord variable contained each time. Here is the note at the top of the subroutine regarding this: SUBROUTINE SAVE.CHANGES.MYFILE(ANS,REC,ID) * This subroutine is called from the 'TRIGGER' I-Type in dict MYFILE. * A secondary index on MYFILE is defined on 'TRIGGER' using the NO.NULLS option. * That forces this subroutine to be called twice when a MYFILE record is updated: * the first time with REC = the original record, then again with REC = the new * record (however, if the MYFILE record is new, this subroutine is called only once). Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Dan Fitzgerald Sent: Friday, March 11, 2005 10:15 AM To: u2-users@listserver.u2ug.org Subject: [U2] Triggers docs? The manual is a bit skimpy on triggers. Any supplemetal docs around? We're trying to track updates to a file; individual items have gone missing lately. No SQL involvement at all. --- 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/ The information contained in this email is strictly confidential and for the use of the addressee only, unless otherwise indicated. If you are not the intended recipient, please do not read, copy, use or disclose to others this message or any attachment. Please also notify the sender by replying to this email or by telephone +44 (0)20 7896 0011 and then delete the email and any copies of it. Opinions, conclusions (etc.) that do not relate to the official business of this company shall be understood as neither given nor endorsed by it. IG Markets Limited and IG Index Plc are authorised and regulated by the Financial Services Authority and, in Australia, by the Australian Securities and Investments Commission. --- 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] Universe SHOW Command and Group Locks
Well, that's what I like about this list. You learn something new every day. After seeing Ray's post (he is exactly right) I tested this circumstance with a modulo 1 file, and yes it happens as described. You cannot readu or write a record in the affected group because of the group lock asserted by the LIST command. Weird. I had never heard of nor seen this before. Obviously that's why the PAKTIME parameter was introduced... Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ray Wurlod Sent: Thursday, November 11, 2004 12:25 PM To: [EMAIL PROTECTED] Subject: Re: [U2] Universe SHOW Command and Group Locks If you're part way through a group with a LIST (or other query, including SHOW) a group latch is held indicating that it's not desirable for the group to be updated. This can be important if the group is heavily overflowed. After a certain amount of time (configured by the PAKTIME tuneable - PAK stands for press any key), the group latch is released. You can ameliorate your situation by reducting PAKTIME from its default of five minutes to, say, one or two minutes, which should be long enough for most folks to inspect a screen full of information. --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Printing an RTF file from Universe
I do this using Accuterm to view/edit/print an rtf formatted document from a PC, but instead of Word I associate Wordpad with .rtf extensions, so that it still works if Word is not installed on the client PC. Here is the code that uses Accuterm to send an item from a universe file (DOCUMENTS) to c:\DOC.rtf, then starts wordpad, then sends the result back. IIRC Albert Kallal posted some vb script to comp.databases.pick to automatically print using word- try googling cdp for printing word documents. There are also some vb scripts to do this sort of thing on the Accusoft website (asent.com). Here is my snippet to send doc.rtf to a pc, edit/view/print it, then send back to uv: * send it DATA O,1=T,,S,K,DOCUMENTS,DOC.ID,C:\,DOC.rtf EXECUTE FT * at2k2 doesn't need the 'start' IF ACCUTERM EQ 1 THEN X = start else X = PRINT ESC:STX::X: c:\DOC.rtf:CR: IF ACCUTERM EQ 2 THEN * at2k2 will wait for wordpad to finish, then execute this * info request, which will be fed to the input below. If * not at2k2 then the user will have to press CR to allow the * uv session to continue. PRINT ESC:STX:I:CR: END ELSE PRINT PRINT Press RETURN to continue...: END INPUT XXX * get it back DATA O,1=T,,R,K,C:\,DOC.rtf,DOCUMENTS,DOC EXECUTE FT Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 From: [EMAIL PROTECTED] on behalf of Brian Parker Sent: Mon 11/8/2004 2:04 PM To: [EMAIL PROTECTED] Subject: [U2] Printing an RTF file from Universe We are trying to use a Word document as a template. As such, we create the document with tags (eg. XXCUSTNAMEXX ) and then save the document as an RTF. In Universe, we read in this RTF file, change the tags to the data and write this new file out as an RTF. This new file can be opened with Word and printed, however, we would like to be able to print it automatically from within a Universe program. Is there a way to this? When we use PRINTER ON and PRINT, the RTF info(eg. {\rtf1\ansi\ansicpg1252\uc1) is printed out. I receive the daily digest, so I may not answer any follow up questions right away. Thanks, Brian Parker WISL while you work! Voice:519-884-2604 FAX: 519-884-0317 Mail: Waterloo Information Systems Limited 33 Dupont Street East Waterloo ON N2J 2G8 --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/ [demime 1.01d removed an attachment of type application/ms-tnef which had a name of winmail.dat] --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Index problem
This (create a trigger in the header file that updates and re-files the detail item(s)) is what I have done on D3 systems. The only thing I might add is that I phantom off the update and include a 'sleep 5' (typically create a run-once proc and phantom that off) so that when the detail update happens the header has already been filed. It's not elegant, but it does work. Scott Ballinger Pareto Corporation Edmonds WA USA 725 670 0831 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Alfke, Colin Sent: Wednesday, November 03, 2004 12:06 PM To: [EMAIL PROTECTED] Subject: RE: [U2] Index problem [snip] Another work around is to have a trigger on the header file re-file the detail items that reference it so that the index is properly updated. I'm not sure if you'll have to change the detail item or not for it to cause the index to be updated. [snip] --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Index problem
Wouldn't it be simpler to... 1. Maintain an attribute in dict ORD.HDR that contains all of the related ORD.DTL ids (or an I-type that builds such a list), perhaps called ORD.DTL.IDS 2. SELECT ORD.HDR WITH CUST.NAME EQ ABC XYZ ORD.DTL.IDS Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Stevenson, Charles Sent: Thursday, November 04, 2004 12:44 PM To: [EMAIL PROTECTED] Subject: RE: [U2] Index problem [snip] Then 2 steps at TCL or pararaph: SELECT ORD.HDR WITH CUST.NAME = XYZ ABC etc... XSELECT ORD.DTL HDR.ID XSELECT takes an active select list of ORD.HDR IDs and essentially does: DTL.LIST = '' LOOP WHILE READNEXT HDR.ID FROM 0 SELECTINDEX 'HDR.ID', HDR.ID FROM DTL.FVAR TO 10 READLIST TEMP.LIST FROM 10 DTL.LIST-1 = TEMP.LIST REPEAT FORMLIST DTL.LIST TO 0 STOP ending with an active select list of all ORD.DTL ids that have CUST.NAME resolved to XYZ or ABC. It is fast. --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2][UV]telnet
I don't think you can. You could use rlogin, which will bypass the user/password, assuming your current user/password exists on the remote system. (Yes I know that rlogin is not secure, so get off the soapbox.) Another option is to use ssh. You can define key-pairs for the local and remote systems, or configure /etc/hosts.equiv to do what you want. Scott Ballinger Pareto Corporation Edmonds WA USA 206-713-6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Stu Glancy Sent: Thursday, October 28, 2004 2:37 PM To: [EMAIL PROTECTED] Subject: Re: [U2][UV]telnet Too simple. How do you pass the user id and password? Lance Jahnke wrote: CMD='SH -c telnet myserver' EXECUTE CMD END * UniVerse -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Stu Glancy Sent: Thursday, October 28, 2004 1:54 PM To: [EMAIL PROTECTED] Subject: [U2][UV]telnet I want to create a telnet script from a program and execute it. Can it be done? If it can, what would the EXECUTE look like? What would the script look like? I'm looking for concept and a little detail. --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] [UV] Triggers
I recently used the index-trigger method to track and record all changes to a file. It seems to work well; it's not a really active file, so the performance hit has been negligible. If anyone is interested I will post the code. The only gotcha was figuring out how many times the TRIGGER subroutine was called, and what my RECord variable contained each time. Here is the note at the top of the subroutine regarding this: SUBROUTINE SAVE.CHANGES.MYFILE(ANS,REC,ID) * This subroutine is called from the 'TRIGGER' I-Type in dict MYFILE. * A secondary index on MYFILE is defined on 'TRIGGER' using the NO.NULLS option. * That forces this subroutine to be called twice when a MYFILE record is updated: * the first time with REC = the original record, then again with REC = the new * record (however, if the MYFILE record is new, this subroutine is called only once). RELLEVEL 0001 X 0002 9.6.1.14 0003 PICK 0004 PICK.FORMAT 0005 9.6.1.14 Scott Ballinger Pareto Corporation Edmonds WA USA 206 713 6006 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Maresh, Mel Sent: Thursday, October 14, 2004 9:55 AM To: [EMAIL PROTECTED] Subject: [U2] [UV] Triggers We have recently upgraded to v10.1 and are reconsidering the use of triggers after encountering significant issues with triggers with v9.4. After successfully testing them in our development environment, we encountered random write failures in production. Has anyone experience with triggers at both version levels? If so, is the use of triggers on non-SQL files, which is now possible, more robust and more efficient than on SQL files in 9.4? It has been suggested that we use indexes instead of triggers in the following way 1. Create an I-descriptor on a file that calls a subroutine 2. Create the subroutine to always return a null value 3. Index the I -descriptor with the no-null option Any time a write is made to the file from any program including the editor, Universe will attempt to update the Index. However the index will not be updated as the returned value is always null. In the meantime the subroutine called to evaluate the value is free to do what we wanted the trigger to do. This apparently was common before triggers became available. Has anyone had experience with this? Any help would be greatly appreciated Mel Maresh NextiraOne LLC IT Senior Developer 713.307.4256 [EMAIL PROTECTED] --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] RE: gvim on UD
Instead of changing your windows gvim configuration, you could ftp as ascii instead of binary- that will convert crlf to lf when sending from dos to unix (and vice-versa). Scott Ballinger Pareto Corporation Edmonds WA USA 425 670 0831 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Shawn Waldie Sent: Friday, October 08, 2004 8:53 AM To: [EMAIL PROTECTED] Subject: RE: [U2] RE: gvim on UD With gvim, I'm editing on my windows pc; then I ftp the source over to the unix host. I'll give Paul's suggestion a shot. -Original Message- From: Ken Wallis [mailto:[EMAIL PROTECTED] Sent: Thursday, October 07, 2004 5:20 PM To: [EMAIL PROTECTED] Subject: RE: [U2] RE: gvim on UD Where are you editing the programs with gvim? On a windows box somewhere, or on UNIX? If running on windows, but accessing a unix file, then you may find that gvim has decided to put in a CRLF instead of just a linefeed at the end of each line. gvim is infinitely configurable, and I'm sure there'll be a way to make it behave the way you need it to. Cheers, Ken --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Serial to EtherNet Media Converter
I have used Digi Portserver TS 4's and Etherlite devices for several Linux installations without any problems. The Realport software create a /dev entry that you treat as a regular tty, and should be available for HPUX. Scott Ballinger Pareto Corporation Edmonds WA USA 425-670-0831 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Brutzman, Bill Sent: Friday, July 30, 2004 12:17 PM To: '[EMAIL PROTECTED]' Subject: [U2] Serial to EtherNet Media Converter While the NPort DE-311 device from Moxa.com is a contender, it is not clear if the DE-311 works with HP-Unix. I would rather not do wireless. Suggestions on alternative devices would be appreciated. --Bill --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] terminal on universe
Western Telematic (wti.com) provides several call record buffer - pbx data recorder devices that are designed specifically for just this. They are not cheap, but they do work well; some versions allow ftp/tftp transfer of the captured data, which is way simpler than messing with polling flow control for rs-232. Scott Ballinger Pareto Corporation Edmonds WA USA 425 670 0831 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Dave Raven Sent: Wednesday, July 07, 2004 11:28 AM To: [EMAIL PROTECTED] Subject: [U2] terminal on universe I have universe 9 on a windows 2000 server and would like to attached to the rs232 port on the server a dumb terminal, has anyone done this and if so how do I setup the port. My intention is to capture an input line from a rs232 printer port. I would logon a the rs232 port and start a basic program with an input prompt. then start the remote computer running a report to the rs232 port on the server and capture the report to a file. Thanks D Raven e Fax (815)4259364 P.O. Box 17811, Irvine CA 92623-7811 --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] double postings
I turned off the rule that was moving all my messages with u2-users in the address from my inbox to the u2-users folder, and the doubles stopped. So it seems to be a feature (don't you love windowsupdate?) of Outlook+Exchange... Perhaps this rule was being executed twice/simultaneously? I will delete it and re-create/enable the rule and see what happens... Scott Ballinger -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Larry Hiscock Sent: Tuesday, June 08, 2004 2:43 PM To: [EMAIL PROTECTED] Subject: RE: [U2] double postings The likelihood is that it's a timeout issue between our SMTP server and your ISP. We've been receiving a number of bounce messages from several different ISPs indicating timeouts. If the email is successfully received, but we timeout waiting for the acknowledgement, we will requeue the outbound email. Larry Hiscock Western Computer Services -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of David Jordan Sent: Tuesday, June 08, 2004 2:12 PM To: [EMAIL PROTECTED] Subject: RE: [U2] double postings This can be an issue with the ISP or mail server. If there is a communication failure between the outlook client and the mail server, the mail is not flagged as been delivered and is loaded again. I see this problem when there is an overload on the ISP auch as a virus out break or equipment failure and the servers are stretched. Regards David Jordan --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] UniVerse on Linux
Could you elaborate, or contact me off-list, re: RH SMP kernel problems with digi driver? I am upgrading a site that uses Digi etherlite devices and the realport driver. The new server is a hyper-threaded P4, which RH9 sees as two CPUs, and thus uses the SMP kernel by default. Thanks, Scott Ballinger Pareto Corporation Edmonds WA USA 206-713-6006 [EMAIL PROTECTED] -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Anthony Dzikiewicz Sent: Thursday, June 03, 2004 6:52 AM [snip] We are still messing with digi portservers. It turned out that there was a bug in the driver that prevented it from working with the SMP kernel. [snip] --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/