RE: [U2] Secondary Index Problem

2005-12-22 Thread Stevenson, Charles
How did this story end? Or is it still a problem? From: [EMAIL PROTECTED] Sent: Tuesday, December 13, 2005 9:06 AM To: u2-Users Subject: [U2] Secondary Index Problem Hi All, UV9.6.1.16 HPUX 11 I have an index that is no longer working and am not sure why. The whole purpose of

RE: [U2] global catdir question - security hole

2005-12-16 Thread Stevenson, Charles
David Wolverton As a 'security risk', has IBM explicitly been asked to fix this item and said they'd prefer just to leave a gaping hole? Or is it like many things, everyone knows it, but everyone thinks someone else has followed up on it, and it must just be 'the way it must be'...

RE: [U2] global catdir question - security hole

2005-12-16 Thread Stevenson, Charles
I think you have the answer. Someone would have to gain access into your system, and having done so, what would be the point of sabotaging something within universe to do something malicious? They already have access to your system. If it's someone internal, then I would imagine your hiring

RE: [U2] global catdir question - security hole

2005-12-15 Thread Stevenson, Charles
It is a security hole, well-known and by design. From: john reid I notice that an ls -lt in the u1 /uv /catdir directory indicates that the *PROGRAM.NAME is updated apparently each time an execution happens, at least that is what it looks like to me. Anyone know if or why that is

RE: [U2] Calling a subroutine on an MV field from an I-Descriptor

2005-12-13 Thread Stevenson, Charles
Try using OCONVS (with an S) instead of OCONV. The problem has nothing to do with I-descriptors. OCONV treats the 1st argument as a string. OCONVS will process each delimited substring individually. Notice the FD (hex value mark) in the middle of the 1st output line below, but the }, which is an

RE: [U2] Calling a subroutine on an MV field from an I-Descriptor

2005-12-13 Thread Stevenson, Charles
From: Stevenson, Charles Try using OCONVS (with an S) instead of OCONV. After seeing Ray W's response, I think I misread your purpose. What I said was true, but irrelevant. The formatting got screwed up on the email. Be gracious let me blame it on that. I'll second Ray's answer instead

RE: [U2] Deciphering Pick UniBasic statement

2005-12-09 Thread Stevenson, Charles
I have not had occasion to use the src4uv.com decompiler service. Probably worth the price when you really need it. I am thankful for the wonderful www.src4uv.com freebie download, SRC.UV.HEADER, that allows access to info about the object file from an I-descriptor subroutine. Besides VLIST, but

RE: [U2] Deciphering Pick UniBasic statement

2005-12-08 Thread Stevenson, Charles
Everyone's going to jump in with the answer, but here's a way to figure it out yourself (on UV, but not UD): Use VLIST. Compile the program, then VBLIST will decompile the object (pcode) into an assembler-kinda-looking output you can see step by step what's happening. CT CDS.BP CALEB

RE: [U2] [UV] PORT.STATUS From Unix

2005-11-23 Thread Stevenson, Charles
From: Perry Taylor Hrm. Good info. How would one go about finding a hung port.status semaphore? Red Herring: --- One would *expect* smat -s to indicate it, but no. Toward the bottom of a smat -s it says: Port status State Netnode Owner Collisions Retries Semaphore

RE: [U2] [UV] PORT.STATUS From Unix

2005-11-23 Thread Stevenson, Charles
link with the list_readu executable to run UNLOCK commands from UNIX : # cd `cat /.uvhome` # ln bin/list_readu bin/unlock # bin/unlock LOGINLOCK SEMAPHORE From: Stevenson, Charles A more dangerous similar example is locking

RE: [U2] User Name Change on Win XP affects Universe

2005-11-23 Thread Stevenson, Charles
@LOGNAME = 'anthonylaptop\Anthony Dzikiewicz' it is awkward because of the space. Keyvalues with spaces are awkward to deal with. Anthony My dear Mr. Dzikiewicz, The space is the least of the awkwardness. Shoot, I have a hard enough time spelling Stevenson! (We have this security

RE: [U2] 15,200 users attained on IBM's U2 UniVerse

2005-11-22 Thread Stevenson, Charles
Tim, Was transaction logging or data replication used? Can you share any interesting performance stats comparing w/ vs w/o TX or DR? cds --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/

RE: [U2] 15,200 users attained on IBM's U2 UniVerse

2005-11-22 Thread Stevenson, Charles
). cds From: Timothy Snyder Stevenson, Charles [EMAIL PROTECTED] wrote on 11/22/2005 11:44:26 AM: Tim, Was transaction logging or data replication used? You're not the first person to ask that. Unfortunately these were not part of the goals of this load test. --- u2-users mailing

RE: [U2] Anyone know how to define dict item to count lines

2005-11-22 Thread Stevenson, Charles
LIST PARTS EVAL @NI FMT 3R 04:36:00pm 22 Nov 2005 PAGE1 PARTS. @NI TARP-GHZPDT-CFG 1 42H1128 2 2108503 3 0511045219-008 4 7258940 5 3769333 6 NAI-DAE50036S7 PS1520-108 3C8228C 9 2657

RE: [U2] [UV] PORT.STATUS From Unix

2005-11-22 Thread Stevenson, Charles
yeahbut, be careful not to leave the semaphore set via miss-typing: For examplem if you did: $port.status | asdfasf (where asdfasf is garbage.) You'll need superuser (or uv administrator?) to do UNLOCK PSTATLOCK SEMAPHORE from TCL. From: Rod Hills If you display the VOC entry for

RE: [U2] [UV] PORT.STATUS From Unix

2005-11-22 Thread Stevenson, Charles
report_lic /tmp/uvlicr.txt ; cat /tmp/uvlicr.txt This is kinda rinkydink too, because if userA runs uvlicr, the /tmp file gets created and is not overwritten when userB runs it. uvlicc is not a problem since only superuser can run it. From: Stevenson, Charles yeahbut, be careful

RE: [U2] RE: Status of an Automatic Write Action to the HOLD (a Type1) File - Solution Found {Unclassified}

2005-11-07 Thread Stevenson, Charles
2 processes can write to the same COMO, too (and ED it simultaneously from a 3rd). Looks like sometimes the 2nd overwrites what the 1st writes, sometimes they interweave. I dunno, I just avoid it rather than keep[ing] them dogies rollin' and sort[ing] 'em at the end of the ride. (Rawhide). And

RE: [U2] Double Indexes

2005-10-21 Thread Stevenson, Charles
From: Marc Harbeson What about an index on an I-DESC? (Does universe do that?) Yes. Virtual attribute is another name for I-descriptor, UniData's term mostly. See Scott Ballinger's earlier post on thist thread here is a repost of part of my own answer: From: Stevenson, Charles Sent

RE: [U2] Double Indexes

2005-10-20 Thread Stevenson, Charles
On UV I believe there were some optimizations at rel 10.0 and it will use both indexes and take the intersection. Use EXPLAIN keyword to see what's going on. Before then, and maybe still on UD(??) it is as you described. A good workaround is: SELECT FILE WITH DATE = 10.18 TO 1 SELECT FILE

RE: [U2] [UD] UniQuery virtual field question

2005-10-14 Thread Stevenson, Charles
TRANS( file, mv.ids, mv.target.fld, 'X'); CONVERT( @SM, '~', @); SUBR( '-FIELDS', @, '~',1,1) or SUBR( '-FIELDS', CONVERT( @SM, '~', TRANS( file, mv.ids, mv.target.fld, 'X' )), '~', 1, 1 ) Explanation: Since FIELDS the other multivalued handling subroutines break things out by and other

RE: [U2] Date Conversion Codes

2005-10-12 Thread Stevenson, Charles
And just for jollies here are some others that are sorta like what you want: DICT 3. DICT 5... Result. DWAMADY 30L WEDNESDAY SEPTEMBER 14 2005 DWAMADY}MCT 30L Wednesday September 14 2005 DWAMADY[3,3,2,4]

RE: [U2] Date Conversion Codes

2005-10-12 Thread Stevenson, Charles
No, I did not know these tricks! Thank-you, Richard Stuart. oconv( 13801, DWAMADY[', ',' ',2', ',4] ) = THURSDAY, OCTOBER 13, 2005 oconv( 13801, DWAMADYL[', ',' ',2', ',4] )= Thursday, October 13, 2005 oconv( 13801, DWAMADY[3'., ',3'. ',2', ',4] ) = THU., OCT. 13, 2005 oconv(

RE: [U2] Unidata TCL - beginner question

2005-10-10 Thread Stevenson, Charles
Bruce, There has been several responses, but I don't think you have an answer yet, do you? I haven't followed the closely don't have the original problem, and it is unclear to me whether you have multi- or single-valued date/part data. At any rate, you'll need to make 2 passes on the file,

RE: [U2] Programmers and Documenation.

2005-10-10 Thread Stevenson, Charles
I prefer to write what essentially becomes the final User Documentation during the Requirement phase of a project. It is the spec the users sign off on and I design and program to that. Sure, there were a few mods along the way, but the approach works very well. And yes, there are often

RE: [U2] OPEN vs TRANS

2005-10-09 Thread Stevenson, Charles
Vectoring (is 'vector' a verb?) is built into TRANS already. No need to abandon in favour of OCONVS T-correlative. You can specify a dynamic array of IDs for the target file to read. I have used the Translate code with OCONVS() function when it is stylistically in keeping with the use of

RE: [U2] How to Default NO.RETURN.WARN in Universe

2005-10-06 Thread Stevenson, Charles
oo! OO! I know! I KNOW! : Don't use GOSUB. Only program with GOTOs. Problem solved. If you insist on using GOSUBs instead of GOTOs, then what Ray said. Don't specify it until after main routine is done and gosubs begin: 01: FUNCTION ANTHONY( INARG1, INARG2 ) 02: GOSUB ABC

RE: [U2] Fw: More U2 programming hints

2005-10-04 Thread Stevenson, Charles
This is a bit disconcerting. BASIC SELECT should be faster than EXECUTE SELECT... Maybe the smart people can weigh in on this: From: Louis Windsor A few years ago we used the BASIC SELECT FILE as opposed to the EXECUTE SELECT FILE. We updated UniVerse (don't ask from what version to

RE: [U2] Fw: More U2 programming hints

2005-10-01 Thread Stevenson, Charles
yeahbut: basic's SSELECT does an alpha sort, even if keys are numeric. i.e.: 1,10,100,11,2 instead of 1,2,10,11,100. And the important gains for basic SELECT filevar over EXECUTE SELECT filename... are lost, (namely traversing the file only once), since the file needs to be entirely traversed to

FW: [U2] Blink Error - Backward Link error

2005-09-28 Thread Stevenson, Charles
Do I detect an enhancement suggestion? Whether this is trivial or hard is beyond me, but I tend to believe Mr. Phillips. (On this subject, anyway. I don't know his opinion of the British Royals, for example.) cds -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On

RE: [U2] Good Programming Practice Question.........

2005-09-28 Thread Stevenson, Charles
One beauty of using a source control system like RCS or SCCS is that you do not need to maintain the mods in the source, the current running version of the source looks clean, but you can also view or print out the incremental differences. When I first introduced using RCS at one shop I got

RE: [U2] To locate the last occurrence of a sub-string in a string

2005-09-28 Thread Stevenson, Charles
From: Hari T. K. Varma Is there any direct one step method to locate the position of last occurrence of a Sub-string in an existing string. For ex:- to locate the last occurrence of AC in the string X=AC2BC2CD2AC2AC2BC2SS for this case the position should be returned 5. Your valuable

RE: [U2] [UV] Manipulating numbered select lists

2005-09-19 Thread Stevenson, Charles
Can you replace your final MERGE.LIST 1 UNION 2 TO 1 with MERGE.LIST 1 UNION 2 TO 0 ? From: [EMAIL PROTECTED] SELECT TRX ..limited branches.. TO 1 SELECT TRX ..limited branches.. TO 2 MERGE.LIST 1 UNION 2 TO 1 SELECT TRX ..limited branches.. TO 2 MERGE.LIST 1 UNION 2 TO 1 Which

RE: [U2] [RANT] HTH

2005-09-15 Thread Stevenson, Charles
yeah,, and HTH and CTDSL are initials not acronymns. Acronyms are initials that are pronounced as a single word. NASA NATO are acronyms. UN is not. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Don Verhagen Sent: Wednesday, September 14, 2005

[U2] [AD] UV/RCS (was: Looking for CheckIn CheckOut)

2005-09-12 Thread Stevenson, Charles
I have UV/RCS, a UV frontend to GNU RCS. It allows RCS functionality and security with the comfort of never having to leave your own home in UV: - Universe menu, - TCL commands, - honours and builds select lists, - and you can control hashed records dictionaries as well as programs.

RE: [U2] Friday Funnies

2005-09-09 Thread Stevenson, Charles
PH ids are usually [jobname]_[itime]_[idate]. The time-date suffices generally suffice to insure a unique id (filename). But what should happen when the same jobname is spawned more than one time in one second? E.g., 25 instances of SQL.DATA.EXTRACT at exactly 00:02:59? Instead of adding a

RE: [U2] RE: Named Common

2005-09-06 Thread Stevenson, Charles
btw named common isn't quite safe either - it's possible that another routine uses the same name for it's common ... I hit that using Pace at a previous job ... What's really needed is a 'local static' modifier. Would be nice :-) What's really needed is a good software mapping

RE: [U2] TCL beginner

2005-09-04 Thread Stevenson, Charles
No one mentioned the ENUM keyword? Here is an example using a file everyone knows: SORT VOC BY TYPE SAMPLE 10 ID.SUP BREAK.ON TYPE ENUM @ID TYPE VOC. K= K= K K= ** 4 VCLEAR.LOCKS VDIVX VHASH.TEST VMENU.DOC VT.LOAD ** 5 XQUIT.KEY ** 1

RE: [U2] TCL beginner

2005-09-04 Thread Stevenson, Charles
ENUM works with multivalues too. Here is an example, again using a file everyone should know, Pick Flavour NEWACC (NEWACC is used to build VOCs for new accounts) verbs have multivalues in 8. The following shows how many NEWACC verbs allow the various ...-SUPP keywords. F8.MV is a D-item with 6 set

RE: [U2] Great examples of bad code, was Date ICONV In English

2005-09-03 Thread Stevenson, Charles
From: Kevin King How about... READU REC FROM FILE,Z ELSE PRINT 'DUSTIN IS AN A**HOLE' STOP END Real code with the exception of the asterisks. And this one: READ ... ELSE CRT ERR: 'Direct access to nonexistent data not allowed.' which regularly displayed on the users'

RE: [U2] RE: Named Common

2005-09-03 Thread Stevenson, Charles
If a guy maintains existing systems that someone else wrote, you can't fault him for not running into a construct that doesn't show up in said systems. I learn new stuff on this list, too. I suppose the DI conversion is in the manual, but I learned it from Neil Charrington on this list yesterday.

RE: [U2] RE: Named Common

2005-09-02 Thread Stevenson, Charles
On another note, I've yet to come across any apps that use the NAMED COMMON concept. Is that a recent addition to the MV world or just not that popular. Thanks in advance. Mark Johnson wow. [Pause. It slowly sinks in.] WOW!!! Named (aka labelled) common has been common on aps with

RE: [U2] Date ICONV In English

2005-09-02 Thread Stevenson, Charles
I did not know that! Works like a charm on UV. Mark, how about D3? I just did DI not wrapped in an F- or A-correlative: CT VOC CDS CDS 0001 X 0002 12/15/05 LIST VOC CDS F2 CDS.DATE CONV CDS.DATE LIST VOC CDS F2 CDS.DATE CONV CDS.DATE 02:53:48pm 02 Sep 2005 PAGE1 VOC.

RE: [U2] Programs slowing down after many iterations

2005-09-01 Thread Stevenson, Charles
Clif Oliver Tim Snyder already said it better than I, but I cannot be silent. This is NOT a workaround. Your fix is the correct way of doing it. Richard Kryka's initialization example is good, too. I don't know why the sudden difference in performance, though. It is curious that the sme

RE: [U2] [uV] is fixtool the safest bet on uV-10.0.11?

2005-08-19 Thread Stevenson, Charles
Would the new improved 10.1.2 fixtool work on 10.0 files? I'm on 10.0.16, but if file structure wasn't changed - and (w/o reading the fine manual) I doubt it was - then the new fixtool should be a nice thing to have in my back pocket. cds From: Clifton Oliver The word I got was that the first

RE: [U2] Remove Scenario

2005-08-12 Thread Stevenson, Charles
Ray, Excellent point, as always, about field- vs value-level -1 difference. One question: Since each X-1 = ... adds to the size of memory allocated for the variable X, every so often X runs out of room and there has to be some sort of linking or remapping. (Recall we're talking about very

RE: [U2] How to find user ID by the USER No. returned by STATUS() function

2005-08-12 Thread Stevenson, Charles
0017: EXECUTE 'LIST.READU' CAPTURING REPLY OrEXECUTE 'LIST.READU USER ':STATUS() CAPTURING REPLY or even EXEUCTE 'LIST.READU INTERNAL USER ':STATUS() CAPTURING REPLY If INTERNAL keyword is used, login id is probably REPLY2,8. (This, for UV.) 0018: REPLY =

RE: [U2] Remove Scenario

2005-08-12 Thread Stevenson, Charles
(I forgot to add delimiters to the X array being built) My original question about memory allocation and overhead while incrementally appending, increasing string length still stands. note 2 changed lines below: From: Stevenson, Charles X = SPACE( 100 ) ;* reserve a million bytes

RE: [U2] Limiting MV's in a list statement

2005-08-09 Thread Stevenson, Charles
I'm surprised there are no answers yet. The WHEN keyword is what you're looking for. And you need to make sure the dictionary is set up right. If ITEM.ID, STATUS.FLAG, CUBES, TOTE.ITEM, UOM are all D- or I- items, then for each of them set 6 = M 7 = BOB.ASSOC The same for any other fields

RE: [U2] [UV] get program name

2005-07-29 Thread Stevenson, Charles
can't find one. For UV SYSTEM(9001) and I'll dust off this old post from a couple years ago: -Original Message- Subject: [UV] SYSTEM(9001) tells you what program you are in where you came from! From:Stevenson, Charles ([EMAIL PROTECTED]) Date:03/20/03 After whining about

RE: [U2] Bad Address for Breakpoint in Debugger

2005-07-28 Thread Stevenson, Charles
VLIST the program and make sure source matches object Any include files that would confuse the debuggers line numbering? Anyone see why I cannot set a breakpoint at line 60? SIS907: 59:IF BAL.LIST1,ARI.PTR # 0 THEN SIS907: 60: ARI.ID =

[U2] REMOVE again. (was Text extraction.)

2005-07-28 Thread Stevenson, Charles
...use $OPTIONS EXT to get the REMOVE to work on D3... I recall Sequioa had REMOVE but the delimiter flag variable had different values. I think 1 meant end of array, for example. e.g. REMOVE A FROM X SETTING D D=1 meant you reached the end. --- Back to U2. 4 comments: 1. As a

RE: [U2][UV]Error Handling

2005-07-25 Thread Stevenson, Charles
A lot of specifics seem to be lost flushed by that time. SYSTEM(9001) is useless. It's frustrating. cds From: Nick Cipollina Is there a way to capture the specifics of the error using ON.ABORT? Is there a way to override error handling in Universe to do something other than display a

RE: [U2] [UD] Select on an attribute

2005-07-25 Thread Stevenson, Charles
Noah, Not directly, but *if* File2 is indexed by its FILE1_ID attribute there are a couple ways. Assume that I have 2 files, such as customer and invoice File1: has 1 attribute, ID File2: has 2 attributes, ID and FILE1_ID I have a savedlist with ID numbers from file1. I want to select

RE: [U2] [UD] Select on an attribute

2005-07-25 Thread Stevenson, Charles
I thought you wanted a list of File2 IDs. Won't the MERGE.LIST INTERSECTION give you a list of File1 IDs? Great! That is exactly what I needed. I forgot about the INTERSECTION option. Noah -Original Message- (If BLORP is your savedlist from File1) GET.LIST BLORP TO 1 SELECT

RE: [U2] [UV] Select Question

2005-07-22 Thread Stevenson, Charles
READNEXT ID FROM LIST ELSE ID = @AM But why do you use an odd convention like ID = @AM ? because it would be impossible for ID to be an attribute mark via readnext. If you later test for ([EMAIL PROTECTED]) there's only one way that could have happened. I'll admit to occasionally doing

RE: [U2] DATABASE write problem

2005-07-20 Thread Stevenson, Charles
A known cause of UV error 040019 (my guess for Anmol is Variation-on-the-Theme #2): When processA is holding the update lock on a record, and processB issues a WRITE to that record, then processB will wait for the lock for 20 minutes (non-configurable), then abort or take ON ERROR clause with

RE: [U2] What is the opposite of FORM.LIST? (uv10)

2005-07-20 Thread Stevenson, Charles
George, It should be there, but it ain't. But for this one it is easier to roll your own verb, than any other course of action. Just flesh out the following with error handling, @SYSTEM.RETURN.CODE, and maybe a get(arg.) for FROM [listno] for numbered select lists, @SYSTEM.RE CT CDS.BP

RE: [U2] THE variable names

2005-07-12 Thread Stevenson, Charles
I'll second Mats, and move to add an amendment: iii) SELECT PRODS and then READNEXT PROD ELSE DONE = TRUE iii) extracts fields ( attributes ) . READNEXT PROD ELSE ... extracts the ENTIRE 1st VALUE of each field (i.e., including ALL SUBvalues of that 1st value) but ignores any other

RE: [U2] Strange phenomena using EXECUTE QSELECT and DATA statements in subroutine

2005-07-11 Thread Stevenson, Charles
REQUIRE.SELECT (or its synonym SELECT.ONLY) is the keyword you are looking for. QUERY = \SELECT PO.GROUP = 'Group Reference'\ DATA \QSELECT PO.GROUP (2)\ DATA \SSELECT POF BY GROUP BY-DSND PO.DATE\ EXECUTE QUERY Well, this works absolutely fine as long as the user enters in a group

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/RO...

2005-06-23 Thread Stevenson, Charles
In my opinion... NO : Retrofitting TRANSACTIONs into existing programs would be a nightmare. YES: Definitely use them when writing a new application from scratch and even a new sub-system enhancement if it is pretty much self-contained with limited, well-defined interfaces that write into the

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/RO...

2005-06-22 Thread Stevenson, Charles
From: Les Hewkin What would you call a really big transaction? A transaction should encompass all updates that should happen (or be abandoned) as a group in order to insure logical data integrity at the application layer. Let me use an example, keeping the preceding statement in mind.

RE: [U2] OCONV of no affect.

2005-06-20 Thread Stevenson, Charles
There are 10 kinds of people in this world: those who understand base-2 and those who don't. (I think I heard that from someone on this list. Can't remember who.) BTW, why did microsoft assign (-1) as true. I don't think (1) works as true and, while being 'not zero', is hard to use

RE: [U2] OCONV of no affect.

2005-06-18 Thread Stevenson, Charles
OK, I'll bite. How does one find a situation where one wants this? From: Mark Johnson Is there an OCONV method that does nothing, ie IF X=OCONV(X,CONV) THEN TRUE. I've had a situation where I could use this before and one crept up today. How does one find MORE THAN ONE situation where one

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/RO...

2005-06-17 Thread Stevenson, Charles
Fine by me, but get your own thread; this one's taken. (Or at least add another sentence to the subject line.) From: Clifton Oliver ...Control numbers, on the other hand, are a completely different issue Anyone want to discuss why most MultiValue systems don't know the concept of

RE: [U2] Reg output of LIST.READU

2005-06-16 Thread Stevenson, Charles
From: shuchi bhandari i had another query reagrding the output of LIST.READU command. On running the command, we got multiple lines of records that were exactly similar i.e. all the parameters inncluding the inode number; process id and Item id were the same. Is this a case of multiple

RE: [U2] [UV] TRANS vs T-correlative: caching last record

2005-06-16 Thread Stevenson, Charles
Barry, Could you post your test program? thx, cds -Original Message- From: Barry Brevik for UniVerse, TRANS() ( aka XLATE() ) will cache a record behind the scenes so that a 2nd I-descriptor that TRANS()s to the same record Please excuse me for butting in. That is very

RE: [U2] [UV] TRANS vs T-correlative: caching last record

2005-06-16 Thread Stevenson, Charles
Martin, Thanks for that: The TRANS cache only operates in the query processor, not Basic programs. Would you be willing to tackle any of these other questions? : - Is T-correlative smart enough to do the same caching as TRANS()? - The caching is only 1 record 1 file deep, just one

RE: [U2] [UV] TRANS vs T-correlative: caching last record

2005-06-16 Thread Stevenson, Charles
Always good to get answers from both Glenn Martin. I thank you both. But combining the 2 answers : - Is T-correlative smart enough to do the same caching as TRANS()? {glenn} A T-correlative calls TRANS under the covers. The t-correlative is parsed and then

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/RO...

2005-06-16 Thread Stevenson, Charles
If more people care, they whould weigh in. Clif moved it into the U2UG Enhancement committee's queue. I'm on that committee so I'll take it up there, but the more voices the better. -Original Message- From: Bill Haskett Charles: No, you guys aren't the only ones. This is a

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/R...

2005-06-16 Thread Stevenson, Charles
I don't think that will work, because the WRITEV is still inside the transaction. As a matter of fact, I think it will error out if there is no explicit readu preceding it. That might be isolation-level-dependent, but I don't think so. LOCK 50 READV SeqNo FROM FILENAME.FV, 'CTRL', 1 ELSE

FW: [U2] [UV] TRANS vs T-correlative: caching last record

2005-06-16 Thread Stevenson, Charles
Glenn seems to have trouble posting. I got this answer off-list and I haven't seen it show up yet on-list, so let me forward it to the rest of you: From: Glenn Herbert [mailto:[EMAIL PROTECTED] Sent: Thursday, June 16, 2005 12:12 PM To: Stevenson, Charles Subject

RE: [U2] [uv]CREATE.FILE syntax for remote directories

2005-06-15 Thread Stevenson, Charles
One might think there was no useful info in the attached post, but then one notices that the From address tells us that Glenn Herbert now has an IBM address. If one assumes Glenn still has some association with DataStage, one may deduce that there may have been some truth to the rumour that

[U2] [UV] TRANS vs T-correlative: caching last record

2005-06-15 Thread Stevenson, Charles
I should already know the answer to this but... for UniVerse, TRANS() ( aka XLATE() ) will cache a record behind the scenes so that a 2nd I-descriptor that TRANS()s to the same record (maybe different field) will not have to do the disk access again. Is T-correlative smart enough to do the

RE: [U2] Conversion Code - M

2005-06-15 Thread Stevenson, Charles
From: Brutzman, Bill [snip] crt @(31,19) : Qty.Rcvd M [snip] I am writing to inquire about the meaning of M. Suggestions would be appreciated. Looks like M is a variable, so it would depend on what it contained. I'm going to guess that M = R#9 ct CDS.BP BILL

RE: [U2] Conversion Code - M

2005-06-15 Thread Stevenson, Charles
From: Brutzman, Bill [snip] crt @(31,19) : Qty.Rcvd M [snip] I am writing to inquire about the meaning of M. Suggestions would be appreciated. Looks like M is a variable, so it would depend on what it contained. I'm going to guess that M = R#9 ct CDS.BP BILL

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/RO...

2005-06-15 Thread Stevenson, Charles
I'm reading through all these responses and probably won't respond to each individually. But I do thank you all for your input. There are several suggestions like the one below that involve incrementing the control record BEFORE the transaction starts. Either grab a block, or grab a master

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/ROLLBACK

2005-06-15 Thread Stevenson, Charles
This is a pretty good idea, Ken. Getting current date time is probably cheaper than reading and incrementing a control record. If time is in milliseconds, uniqueness is even more likely so likelihood of locking a new record with SEED_VAL= 000 is good. date()*1 + time() might be faster than

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/ROLLBACK

2005-06-15 Thread Stevenson, Charles
From: Anthony Dzikiewicz So, what if you change the READVU to a READVL ? I don't understand what READL buys me. (Not arguing, just looking to understand.) I thought you need a READU in order to do the write within the transaction. By the way, I've only been working with ISOMODE 1, if that

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/RO...

2005-06-15 Thread Stevenson, Charles
Missing sequential numbers isn't important to me, but it's a good point for general discussion. cds From: Bruce Nichol This is all well and good if the commit goes ahead, but if rollback is the action, don't you lose a supposedly sequential root key into the vapours? Never to be seen

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/RO...

2005-06-15 Thread Stevenson, Charles
Ah-HA! Some real world transaction experience! Just what I wanted, Les. From: Les Hewkin Start trasnactions Readu control record then record.ID = control record write record control record += 1 write control record end end transaction This seems to work

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/R...

2005-06-15 Thread Stevenson, Charles
From: Bill Haskett I wonder if the same issue (transactions don't release record locks until they're committed) applies to the LOCK/UNLOCK statement? No, those are independent of transactions. So could they be leveraged for the question posed here? . . . I don't see it. cds --- u2-users

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/RO...

2005-06-15 Thread Stevenson, Charles
Would this be a worthwhile enhancement request through U2UG? Are Ken and I the only ones whining about this: From: [EMAIL PROTECTED] Ideally of course, the ID would be allocated by the DBMS transparently when the record is inserted into the file, but neither U2 product supports that concept

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/RO...

2005-06-15 Thread Stevenson, Charles
From: Brian Leach ...Windows service app) in Delphi... Mutex wrapper... thread safe. ... Socket API or SOAP API... smart aleck. Seriously, if you are going to use transactions I would guess the only way to avoid maintaining the key for the duration of the transaction (to go back to the

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/RO...

2005-06-12 Thread Stevenson, Charles
Charlie, I don't see how that addresses the TRANSACTION problem. If the call to your NEXT.AVAIL.ID routine happens after TRANSACTION START, the id control item will not be updated nor will its lock be released until TRANSACTION COMMIT (or rollback) is executed, even though the NEXT.AVAIL.ID

RE: [U2] Best Practice for Sequential IDs

2005-06-11 Thread Stevenson, Charles
Bill, The pooh-syndrome has struck me again. I think I've missed your point. How does this apply to the TRANSACTION scenario? Oh, wait. You dropped that from the subject line. So this is a new more general thread? Maybe we need a contest for the best

[U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/ROLLBACK

2005-06-10 Thread Stevenson, Charles
For files with sequential numbers as record IDs, it is common practice to use a control item (in dictionary or in a special control table) to get the next sequential id counter, then write back the incremented counter ASAP so it is available for the next process that needs to do the same. Some

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/ROLLBACK

2005-06-10 Thread Stevenson, Charles
I feel like Winnie-the-Pooh here, Ray. I'm not following you. Are you saying reserve a block of N IDs before starting the transaction, by incrementing by N the traditional next-seq-id control record thereby freeing the ctrl item for use by other processes? What's the point of the 2 sequential

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/ROLLBACK

2005-06-10 Thread Stevenson, Charles
One thing I would add to this is to always check to see if the key exists on the file that you are writing to before stepping on an existing record. I'm not concerned about fleshing out my little READVU SEQ.ID . . . WRITEV SEQ.ID+1 . . . Yes, you have to check for existing records and worry

RE: [U2] Best practice for Sequential IDs using TRANSACTION START COMMIT/ROLLBACK

2005-06-10 Thread Stevenson, Charles
How about replacing: Some variation on this theme (probably involving a utility subroutine): READVU SEQ.ID FROM ctrl.fvar, ctrl.id, n ... WRITEV SEQ.ID+1 TO ctrl.fvar, ctrl.id, n WRITE NEW.REC TO fvar, SEQ.ID with some variation of: OPENSEQ path TO ctrl.fseq ELSE ... READSEQ

RE: [U2] [UV] SETREM REMOVE (bug in SETREM)

2005-06-09 Thread Stevenson, Charles
Adrian, Could you provide an example program of it not working? Which version of UV? I am unaware of the problem you describe. There is a bug with REVREMOVE, (reverse-remove through a dynamic array). It was partially fixed at 9.6 or 10.0 (I forget when), but not quite. The list archives should

RE: [U2] [UV] uvnetd: Unable to locate file for key 1075976752 in Network Table.

2005-06-09 Thread Stevenson, Charles
From: John Jenkins Try selecting with NO.INDEX selected I did, but by that time it was acting normal every which way, so I didn't learn anything. - and try it on each part file individually. did, but see above. It could be the GTAR but I have seen oddities with one of: 1. A Index based

[U2] [UV] uvnetd: Unable to locate file for key 1075976752 in Network Table.

2005-06-08 Thread Stevenson, Charles
1st, we do not use UV/NET. This happened on a stand-alone UV system HPUX 11i, UV 10.0.16. The error (Exhibit A) occurred SELECTing or LISTing a distributed file (Exhibit C), or either of its 2 parts, with the selection criteria based on an indexed field. This is from TCL on a

RE: [U2] Printing from UniVerse

2005-06-07 Thread Stevenson, Charles
Bill Diane, I'd hold suspect just about anything this teacher said. That is - to be polite - a unique way of thinking about EQUATEs. There are not 2 slots in memory to update simultaneously. I believe EQUATE on Microdata, UV, and ALL MV-Basics are substantially equivalent in that EQUATE is an

RE: [U2] Printing from UniVerse

2005-06-03 Thread Stevenson, Charles
Yes , very helpful, but those should be EQUATEs, not assignments. Equates of quoted texts, CHAR(27), and even concatenations of these will all be resolved to strings by the compiler. Nothing gets executed at runtime. If the file as written were $INCLUDEd in a utility routine that gets called

RE: [U2] Finding last day of month

2005-06-02 Thread Stevenson, Charles
I use the method my dad taught me when I was a kid, cuz I couldn't remember Thiry days hath September Hold 2 fists side-by-side, forefingers of right left hand touching. Each knuckle and each valley between knuckles represents a month. Start at the left pinky knuckle and count off months. If

RE: **POSSIBLE SPAM**::RE: [U2] Uniobjects hack

2005-05-31 Thread Stevenson, Charles
From: Les Hewkin Can we have a quick show of hands of those who have had there U2 system hacked? I was accused of it once by a system administrator because I pointed out the security hole that I was then accused of wriggling through. This was the same system administrator who once ended up as

[U2] [UV] determining what kind of record/file lock is blocking you

2005-05-19 Thread Stevenson, Charles
If you execute a READU hit the LOCKED clause, STATUS() will tell you the USERNO of whoever holds the lock you want. But what is the best way to tell what _kind_ of lock is blocking you? E.g., is it a record lock or a filelock? The only way I can think of is to dig through the results of:

RE: [U2] [UV] determining what kind of record/file lock is blocking you

2005-05-19 Thread Stevenson, Charles
Thank-you, Perry! That's exactly what I wanted. I've used it before, just forgot it, couldn't find it. What a wonderful list, cds -Original Message- From: Perry Taylor I think you can use the RECORDLOCKED() function. -Original Message- From: Stevenson, Charles If you execute

RE: [U2] UV PERFORM 'SELECT filename ...' in I-Type {Unclassified}

2005-05-19 Thread Stevenson, Charles
Mike, You've probably already figured it out or been told, but if you use a numbered select list in your innermost executed select or selectindex inside the i-desc subroutine, I'll bet you'll be ok. I favour a standard that says select list 10 is a very temporary list that a low level function

RE: [U2] I'm in an Array quandry, any suggestions...

2005-05-18 Thread Stevenson, Charles
...Allow re-dimensioning of dimensioned arrays at runtime... As others have pointed out, YOU CAN $OPTIONS -STATIC.DIM Minus sign means not as in not static dim as in you can redimension this on the fly at runtime. It is necessary in Pick- Reality-flavors. PI- and Ideal-flavors have that

<    1   2   3   4   5   >