Re: [U2] Unwanted Duplicates
Use the UNION keyword in MERGE.LIST. GET.LIST LIST 1 TO 1 GET.LIST LIST2 TO 2 MERGE.LIST 1 UNION 2 If you are using UniData, use ECLTYPE U not ECLTYPE P. get.list LIST1 TO 1 get.list LIST2 TO 2 merge.list 1 UNION 2 From HELP: Note: UniQuery only supports MERGE.LIST is in ECLTYPE U. Note: The INTERSECTION and UNION operators build a list of unique items. If an item exists in list1 and list2, it is saved only once Shaun Ferguson Information Technology, Application Architect I Ferguson Enterprises, Inc. 12500 Jefferson Avenue * Newport News * VA * 23602-4314 T: +1 (757) 989 2916 * F: +1 (757) 989 2801 www.ferguson.com http://www.wolseley.com/ ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
[U2] Entering a Value Mark
Sorry for the late reply but have been under the weather. I believe you can enter ^253 (that's shift-6 carat and number 253) to get a value mark into an attribute. Shaun Ferguson Information Technology, Application Architect I Ferguson Enterprises, Inc. 12500 Jefferson Avenue * Newport News * VA * 23602-4314 T: +1 (757) 989 2916 * F: +1 (757) 989 2801 www.ferguson.com http://www.wolseley.com/ ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
[U2] UniData Triggers
We are creating a trigger on a file that is used extensively in the system. Is it necessary to logoff users when creating an update trigger on a file or does UniData handle that when updating the trigger information to the header of the file? The 'help' does not specify whether trigger creation requires exclusive access to the file or not. Thanks! Shaun Ferguson Applications Architect I Wolseley Group Services - 12500 Jefferson Avenue - Newport News - VA - 23602-4314 T: (757) 989-2916 - F: (757) 989-2801 - E: shaun.fergu...@wolseley.com www.wolseley.com blocked::http://www.wolseley.com/ Wolseley plc registered office Parkview 1220 Arlington Business Park Theale Nr Reading RG7 4GA United Kingdom Registration No. 29846 England ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] UniData Triggers
Thank you for your replies! We also make use of master trigger subroutines that call subroutines so that is not an issue. I just wanted to be sure that the initial creation of an update trigger on a file would not affect current logged in users with that file open. We'll do the creation in the w hours of morning to mitigate the risk, but I'm seeing that should not be any, at least on an update trigger. I can imagine that a delete trigger could have some risk. Thanks again! Shaun Ferguson Applications Architect I Wolseley Group Services - 12500 Jefferson Avenue - Newport News - VA - 23602-4314 T: (757) 989-2916 - F: (757) 989-2801 - E: shaun.fergu...@wolseley.com www.wolseley.com blocked::http://www.wolseley.com/ Wolseley plc registered office Parkview 1220 Arlington Business Park Theale Nr Reading RG7 4GA United Kingdom Registration No. 29846 England ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
[U2] html 2 xls
Anyone know of a conversion tool that will take html and produce xls (Excel spreadsheet) formatted files? We are running UniData on HPUX but could probably use a utility on a windows server if necessary. Thanks! Shaun Ferguson Applications Architect I Wolseley Group Services - 12500 Jefferson Avenue - Newport News - VA - 23602-4314 T: (757) 989-2916 - F: (757) 989-2801 - E: shaun.fergu...@wolseley.com www.wolseley.com blocked::http://www.wolseley.com/ Wolseley plc registered office Parkview 1220 Arlington Business Park Theale Nr Reading RG7 4GA United Kingdom Registration No. 29846 England ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Very Weird Trigger Behavior
HP Itanium UniData Release 7.1 Basictype p Records cannot be deleted from TCL (ECL?) even with a select list active: 1 records selected to list 0. DELETE COUNTY Do you want to delete records in select list?(Y/N) Y 'KEY':cannot be deleted, due to trigger constraint. --- Wow! This is really similar to what I'm trying to do. What is your: OS, Unidata version, BASICTYPE? Also, are you having success with both ECL DELETEs and UniBasic DELETEs? Thanks! Jonathan Shaun.Ferguson wrote: We are doing this with a county and zip file - the trigger is on the county file and a record cannot be deleted if it's referenced in the zip file: SUBROUTINE TRIG.COUNTY.DEL (EXECSTAT, DICTFLAG, FILENAME, COUNTY_ID) EQU DELETE_DENIED TO 0 EQU DELETE_ALLOWED TO 1 EXECSTAT = DELETE_DENIED IF (UNASSIGNED(FILENAME) OR (FILENAME NE COUNTY)) THEN RETURN END IF (UNASSIGNED(COUNTY_ID) OR (TRIM(COUNTY_ID) EQ )) THEN RETURN END CMD = 'SELECT P_ZIP WITH COUNTY_ID EQ ':COUNTY_ID:'' ZIP_LIST = EXECUTE CMD RTNLIST ZIP_LIST CAPTURING OUTPUT IF @SYSTEM.RETURN.CODE EQ 0 THEN EXECSTAT = DELETE_ALLOWED END RETURN Shaun Ferguson Applications Architect I Wolseley Group Services - 12500 Jefferson Avenue - Newport News - VA - 23602-4314 T: (757) 989-2916 - F: (757) 989-2801 - E: shaun.fergu...@wolseley.com www.wolseley.com blocked::http://www.wolseley.com/ Wolseley plc registered office Parkview 1220 Arlington Business Park Theale Nr Reading RG7 4GA United Kingdom Registration No. 29846 England Shaun Ferguson Applications Architect I Wolseley Group Services - 12500 Jefferson Avenue - Newport News - VA - 23602-4314 T: (757) 989-2916 - F: (757) 989-2801 - E: shaun.fergu...@wolseley.com www.wolseley.com blocked::http://www.wolseley.com/ Wolseley plc registered office Parkview 1220 Arlington Business Park Theale Nr Reading RG7 4GA United Kingdom Registration No. 29846 England ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Very Weird Trigger Behavior
We are doing this with a county and zip file - the trigger is on the county file and a record cannot be deleted if it's referenced in the zip file: SUBROUTINE TRIG.COUNTY.DEL (EXECSTAT, DICTFLAG, FILENAME, COUNTY_ID) EQU DELETE_DENIED TO 0 EQU DELETE_ALLOWED TO 1 EXECSTAT = DELETE_DENIED IF (UNASSIGNED(FILENAME) OR (FILENAME NE COUNTY)) THEN RETURN END IF (UNASSIGNED(COUNTY_ID) OR (TRIM(COUNTY_ID) EQ )) THEN RETURN END CMD = 'SELECT P_ZIP WITH COUNTY_ID EQ ':COUNTY_ID:'' ZIP_LIST = EXECUTE CMD RTNLIST ZIP_LIST CAPTURING OUTPUT IF @SYSTEM.RETURN.CODE EQ 0 THEN EXECSTAT = DELETE_ALLOWED END RETURN Shaun Ferguson Applications Architect I Wolseley Group Services - 12500 Jefferson Avenue - Newport News - VA - 23602-4314 T: (757) 989-2916 - F: (757) 989-2801 - E: shaun.fergu...@wolseley.com www.wolseley.com blocked::http://www.wolseley.com/ Wolseley plc registered office Parkview 1220 Arlington Business Park Theale Nr Reading RG7 4GA United Kingdom Registration No. 29846 England ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] UV retrieve
Have you tried specifying dictionary items in the list command? EX; LIST ANYFILE F1 F5 USING DICT VOC Shaun Ferguson Master Data Systems Analyst Wolseley Group Services - 12500 Jefferson Avenue - Newport News - VA - 23602-4314 T: (757) 989-2916 - F: (757) 989-2801 - E: shaun.fergu...@wolseley.com www.wolseley.com BLOCKED::http://www.wolseley.com/ Wolseley plc registered office Parkview 1220 Arlington Business Park Theale Nr Reading RG7 4GA United Kingdom Registration No. 29846 England ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] UD: Phantoms
I am on digest, so apologies if this is a duplication of a suggestion made earlier. We tend to use plain old record locks for our phantom processes. The record won't list but if you try to edit it, it will come back as locked and prevents a second instance of the process from running. Ex; * Set an exclusive record lock or exit if already running RECORDLOCKU F.FILENAME,BACKGROUND.SERVICE LOCKED * Send a message if necessary STOP END Also, for sleeping phantoms, I've found the LIST.PAUSED command helpful to at least see if they are there. It's not helpful at all for what they're running or where they're running. Shaun Ferguson Systems Analyst Ferguson Enterprises, Inc. ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
[U2] 2 cents
Amazing that almost entire digest posts have been dedicated to helping one individual (Mr Walgude of Rsystems, International, ltd) with one piece of logic in UniBasic. I can't imagine what it's going to be like when more of these questions are asked. Will we still have a viable UG helping each other or will we be teaching our competition how to bring this work overseas? Sigh, I guess it's inevitable... Don't mind me, having one of those years...(And I'm on digest, btw) Shaun Ferguson Master Data Systems Analyst/Global Business Applications Wolseley plc - 12500 Jefferson Avenue - Newport News - VA - 23602-4314 T: (757) 989-2916 - F: (757) 989-2801 - E: shaun.fergu...@wolseley.com www.wolseley.com file:///C:/Documents%20and%20Settings/SFERGUS1/Application%20Data/Micro soft/Signatures/www.wolseley.com ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Error 4 22 from PHP exec of uv on AIX
Sorry, I'm on digest... Does the user executing this command have a profile setup with the paths to Universe? I've been working in UniData so it may be different, but the user has to have their environment setup to the correct paths to UniData bin, etc (UDTBIN = /blablabla/ud/bin). Shaun Ferguson Master Data Systems Analyst/Global Business Applications Wolseley plc - 12500 Jefferson Avenue - Newport News - VA - 23602-4314 T: (757) 989-2916 - F: (757) 989-2801 - E: shaun.fergu...@wolseley.comĀ www.wolseley.com ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Triggers and Account Copy
Triggers on files usually call subroutines that do something, update an audit file or check for consistency or add an item to a queue, for example. As long as the trigger subroutines are accessing local files in the test environment and the main trigger subroutines are cataloged globally, you should be fine. You can substitute any other called subroutines within the main subroutine locally and make them 'stub' programs if necessary. There is no reason to remove the triggers on the files with a plain 'cp' command. Just make sure that the subroutines are not updating production data anywhere and that all file opens are to local files in your test environment. Shaun Ferguson Master Data Systems Analyst/Global Business Applications Wolseley plc - 12500 Jefferson Avenue - Newport News - VA - 23602-4314 T: (757) 989-2916 - F: (757) 989-2801 - E: shaun.fergu...@wolseley.comĀ www.wolseley.com ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
[U2] Index Rebuilding
I'm on digest, so sorry for the delay. Indexes on UniVerse and UniData are different. UniVerse will stop you from creating them if the file is open by any process (very good!). UniData will go on it's merry way and create the index even if the file is open by another process. You run the BUILD.INDEX command and all looks fine. Then you add more records to the file and the index appears broken. Your new records are not accounted for. On UniData, you must be absolutely sure that the file is not open when you create the index. On unix, I use fuser -u [path to file]. I do not know the equivalent on Window$. Indexes have become very stable and accurate if created properly. As mentioned earlier, best not to use I or V dictionary items, if possible (especially TRANS or file OCONV's), and better to use the key and null in a boolean expression (using NO.NULLS at creation) instead of a 1 and 0. Just my 2 cents... Shaun --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
[U2] UniData Dynamic File Behavior
Hello and happy new year! HpUx 11.11 - UniData 6.1.18 - We have a dynamic file created with KEYDATA using the default split/merge of 95/40. Monday night, an automated purge process kicked off removing approx. 310,000 plus records from this file. On Tuesday, the process was still running and the file was consuming disk space at an alarming rate. We are mystified why the deletion of records from a dynamic file would cause it to grow. It essentially split to the point of more than doubling in size (started with 3 'dat' files and 1 'ovr' file and grew to 8 'dat's and 1 'ovr'). When we resized the file in the wee hours of the morning, we reclaimed approx. 10 gig of disk space. Does anyone know what would cause a dynamic file to grow when removing records? TIA! Shaun P. Ferguson Sr Program Analyst Ferguson Enterprises, Inc. --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
[U2] RE: reindexing
Jeff, You did not mention the flavor of U2, but I know that on UniData, if the file is open by anyone, the index does not function properly even though it appears to have performed your indexing commands without error. UniVerse, on the other hand, complains that the file is not available to create indexes on when it's open... On unix, I use 'fuser -u [pathtofile] to see if it's in use prior to creating an index. Just one of those things that I wish UniData did for me...sigh... Shaun Date: Wed, 15 Nov 2006 23:00:29 -0500 (EST) From: Jeff Butera [EMAIL PROTECTED] Subject: [U2] reindexing I have a file with various indicies built on it: File.. COURSES Alternate key length.. 20 Node/Block size... 4K OV blocks. 1 (1 in use, 1 overflowed) Indices... 6 (6 D-type) Index updates. Enabled, No updates pending Index-Name.. F-type K-type Built Empties Dups In-DICT S/M F-no/VF-expr CRS.SUBJECT D TxtYes No Yes Yes S 12 CRS.NOD TxtYes No Yes Yes S 16 CRS.TERMS.OFFERED D TxtYes No Yes Yes M 20 CRS.NAME D TxtYes No Yes Yes S 4 I'm writing records to this file and correctly populating CRS.NAME. Aftering doing so, SELECT COURSES WITH CRS.NAME EQ 'foo' fail for the newly add course 'foo' (regardless of the value of CRS.NAME). However, if I reindex the file, the SELECT works. I'm all ears if anyone can offer insight as to how/why the indicies aren't getting updated until I force a reindex. Jeff Butera, Ph.D. Administrative Systems Hampshire College [EMAIL PROTECTED] 413-559-5556 I'm not grumpy Daddy, I'm whining. my 3-year old showing her wisdom -- End of U2 Users Digest V1 #1398 *** u2-users-digest 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] UniData Application Monitor
Hello all, I am trying to search for a monitoring tool for UniData UniBasic applications and am getting no results at indexinfocus.com. The search engine appears to be hosed. Anyone have any suggestions? Specifically, we want to know things like, how often a subroutine is called, how much cpu programs use (top is ok for this but uses a lot of computer just to provide the results), what applications are cataloged globally and have not been used at all for a specified timeframe. Things like that. We run on unix. I'm on digest, so I won't see your answer(s) right away. TIA! Shaun P. Ferguson Sr Program Analyst Ferguson Enterprises, Inc. --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
[U2] RE: Named Common
I'm on digest, but here's an example of named common which we use extensively supporting many many concurrent users (makes the systems fly without all that open file overhead, imho). Hpux / UniData, btw. 001: *INCLUDE EX.NAMED.COMMON 002: * EX named common and file open routine 003: * 004: *=== == 005: * WARNING 006: * If you are making changes here, please review all programs that 007: * include this common block and recompile / catalog them as necessary. 008: *=== == 009: * 010: *--- -- 011: * NOTE: THE ex.all.files.opened Var MUST be the first COMMON 012: COMMON /EXAMPLE/ ex.all.files.opened 013: *--- -- 014: * 015: COMMON /EXAMPLE/ F.CUSTOMER.FILE 016: COMMON /EXAMPLE/ F.CUSTOMER.XREF 017: COMMON /EXAMPLE/ F.ACCTS.RECV 018: COMMON /EXAMPLE/ F.INVOICES 019: COMMON /EXAMPLE/ F.BRANCH.FILE 020: COMMON /EXAMPLE/ F.BRANCH.XREF 021: COMMON /EXAMPLE/ F.CASH.DRAWER 022: COMMON /EXAMPLE/ F.CASH.SALE.FILE 023: COMMON /EXAMPLE/ F.CREDIT.FILE 024: * 025: *=== == 026: * open.files 027: *=== == 028: * 029: *--- -- 030: * This Section Of Code Must Always Remain At The End Of The Include. This 031: * Was Added Here To Avoid Having To Check For Open Files For Any Program 032: * That Requires This Named Common. 033: *--- -- 034: * 035: * If EX Files Are Not Opened 036: IF UNASSIGNED(ex.all.files.opened) OR NOT(ex.all.files.opened) THEN 037: * 038: * Set Opened Flag Assuming Success 039: ex.all.files.opened=1; ERR='' 040: * 041: * Call Open Files Routine 042: CALL EX.OPEN.ALL.FILES(ERR) 043: * 044: * If File Open Failed 045: IF ERR # THEN 046: * 047: * Display Error Message 048: INPUTERR Contact Support. The following EX file(s) could not be opened :; CRT 049: * 050: * Display Filenames That Were Not Opened 051: MAX = DCOUNT(ERR,@AM) 052: FOR X = 1 TO MAX 053: CRT X'R%2. ':ERRX 054: NEXT X 055: * 056: * Get Response (Let Them See Errors) 057: PROMPT 058: CRT Press RTN : 059: INPUT AFT,1 060: * 061: * Flag Attempt Unsuccessful 062: ex.all.files.opened=0 063: * 064: * Bailout 065: STOP 066: END 067: END Bottom. 001: SUBROUTINE EX.OPEN.ALL.FILES(ERR) 002: * Put the opening of EX files in one place 003: * 004: ** Program Description ** 005: * Put the opening of EX files in one place 006: ** 007: * 008: $INCLUDE EX.NAMED.COMMON 009: * 010: ERR = '' 011: * 012: *--- -- 013: * Open files 014: *--- -- 015: * 016: OPEN CUSTOMER.FILE TO F.CUSTOMER.FILE ELSE ERR-1 = CUSTOMER.FILE 017: OPEN CUSTOMER.XREF TO F.CUSTOMER.XREF ELSE ERR-1 = CUSTOMER.XREF 018: OPEN ACCTS.RECV TO F.ACCTS.RECV ELSE ERR-1 = ACCTS.RECV 019: OPEN INVOICESTO F.INVOICESELSE ERR-1 = INVOICES 020: OPEN BRANCH.FILE TO F.BRANCH.FILE ELSE ERR-1 = BRANCH.FILE 021: OPEN BRANCH.XREF TO F.BRANCH.XREF ELSE ERR-1 = BRANCH.XREF 022: OPEN CASH.DRAWER TO F.CASH.DRAWER ELSE ERR-1 = CASH.DRAWER 023: OPEN CASH.SALE.FILE TO F.CASH.SALE.FILE ELSE ERR-1 = CASH.SALE.FILE 024: OPEN CREDIT.FILE TO F.CREDIT.FILE ELSE ERR-1 = CREDIT.FILE 025: * 026: RETURN Bottom. If you have multiple accounts that users can hop around to, put a line in your VOC login that will remove the named common block in each account such as DELETECOMMON EXAMPLE or if you use many named common blocks, as we do, create a separate paragraph or proc that does it to all of them and put that in each account's VOC login. Now all programs and subroutines that use these files can have the 'EX.NAMED.COMMON included at the top and the file handles will stay available (opened) throughout their login session. Hope this helps! Shaun Ferguson Sr. Program Analyst Ferguson Enterprises, Inc. --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
[U2] Unidata Data Replication - RECONFIG command
Hello all! Unidata 6.1.10 on Unix - I am doing a preliminary investigation of Data Replication and will be setting up a test environment. The guide says that I can install it manually (creating files, updating a table, setting the REP_FLAG in udtconfig), but, it also says that the system is dynamically configurable by executing the RECONFIG command. I cannot find this command anywhere. Anyone know if this is only installed by the Udt installation process if you say Y to Turn on the Replication SubSystem prompt? (Of course we originally said N) I'm on digest so TIA for any responses. Thanks! Shaun --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
[U2] BY.EXP Levels
Unidata 5.2 running on HPUX 11i Just a quick question, though I know I won't get an answer til the a.m. (digest only)... Does anyone know how many fields one can do BY.EXP on before this type of error occurs? system error in get_oldloc() index=1, wlv=-2, *vnumb=1, *snumb=1system error in get_oldloc() Is there a max number of multivalue associates that we can explode on? Thanks! Shaun --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/