Re: [U2] Refactoring Tools
Hello Tony Thanks for the heads-up. I'll take a look. Brian -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tony Gravagno Sent: 22 April 2013 21:29 To: u2-users@listserver.u2ug.org Subject: Re: [U2] Refactoring Tools Brian, on my freeware page I have a Merge/Split routine. I use it to merge Included code modules so that I can run, debug, and edit them as a unit, then split the modules off back into their components. From there, re-compiling all code allows the entire app to benefit from an individual effort. http://Nebula-RnD.com/freeware/ The utility gets a uniquely stamped backup of every item before every operation to ensure nothing gets lost. WRT your query, it sounds like you want to factor out common code. I'd approach this by writing a utility that scans items for common blocks of text, wrapping those blocks with start/end markers which I use in the Merge/Split. So let's say you have 100 lines that start with label FOO: * do foo. Wrap that as follows: *! START.INCLUDE INC.FOO FOO: * do foo *! END.INCLUDE With all program items marked like that, run the Merge/Split on them and do a split (without a prior merge since you're creating new Includes). You'll get a single INC.FOO item and all other items will then INCLUDE INC.FOO at the right location. This will take some manual effort. You don't really know what blocks to refactor out until you've looked around for common patterns, and you will find a lot of blocks that are close but not quite the same. You could factor out all FOO subroutines into individual items, then delete items that are the same, and modify code which includes that code to use a single Include item. The most benefit comes when you find lots of large common blocks of code. This usually comes in the form of long EQUate lists, Common definitions, blocks of Open statements, and logging and other housekeeping. You may even find value in Includes of Includes. If you do use the Merge/Split freeware, I'd appreciate if you'd pass back any updates you make for this specific purpose. Aside from that more manual approach, check out mvToolbox. It has a ton of features that do all sorts of magical things - for all I know it might have some hidden function to help to refactor out an entire application. Some developers load it to every new site they work on, to organize app code before doing any other work on it. (Yes, that needs to be done properly.) http://www.mvtoolbox.com/index.html Use that link to avoid getting passed off to the awful awful web ring. While marketed via a poor website, mvToolbox is great software which only suffers from having too many features and too much documentation. Get over the too/too issue and you will find a number of gems in there at too low of a price for such a useful tool. HTH T From: Brian Leach I'm doing some intensive work with a large UniVerse site to assist them in migrating their 20 year old code base and working practices to full Agile, XP and TDD. They are really enthusiastic in embracing the modern world and making good progress, but there is a huge amount of legacy code to be cleaned up and test harnessed. So before I spend time possibly reinventing the wheel, does anyone know of any good refactoring tools for UniVerse Basic? ___ 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] UD - Display Current Terminal Type
Sorry, I thought it was available on both UV and UD. It is a valid verb on UV: GET.TERM.TYPE Wyse Technology 50/60 (W) Width : 127 Depth : 40 -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Bill Haskett Sent: Tuesday, April 23, 2013 9:09 PM To: U2 Users List Subject: Re: [U2] UD - Display Current Terminal Type :GET.TERM.TYPE Not a verb GET.TERM.TYPE :version Module Name Version Licensed UniData RDBMS 7.3 Yes Connection Pooling... 7.3 Yes Device License... 7.3 Yes NFA.. 7.3 No RFS.. 7.3 No EDA.. 7.3 No 733 Bill Untitled Page - Original Message - *From:* tewhitm...@ratex.com *To:* U2 Users List u2-users@listserver.u2ug.org *Date:* 4/23/2013 5:11 PM *Subject:* Re: [U2] UD - Display Current Terminal Type GET.TERM.TYPE will display the terminal type, width and depth. Tom Whitmore RATEX Business Solutions -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Bill Haskett Sent: Tuesday, April 23, 2013 5:12 PM To: U2 Mail List Subject: [U2] UD - Display Current Terminal Type I've had a brain-freeze and can't remember how to display the current terminal type at ECL. I know it's SYSTEM(7) but what ECL command do I need to display it? TERM doesn't work (although I can set it by entering TERM WYSE60). PTERM doesn't work (it gives me all kinds of other things). Any help would be appreciated. Bill ___ 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] UD - Display Current Terminal Type
Not ECL, but UniBasic and should work in UD on either Unix or NT X=GETENV(TERM) PRINT X vt220 - Epicor Software (UK) is a limited company registered in England Wales. Registration Number: 2338274. Registered Office: 6th Floor, One London Wall, London EC2Y 5EB This e-mail and any attachments to it are confidential and is for the use of the intended recipient(s) only. If you have received this e-mail in error, please notify the sender immediately and then delete it. If you are not the intended recipient, you must not use, disclose or distribute this e-mail without the author's prior permission. We have taken precautions to minimize the risk of transmitting software viruses, but we advise you to carry out your own virus checks on any attachment to this message. We cannot accept liability for any loss or damage caused by software viruses. Any views and/or opinions expressed in this e-mail are of the author only and do not represent the views of Epicor Software (UK) Limited or any other company within its group. - -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tom Whitmore Sent: 24 April 2013 13:23 To: U2 Users List Subject: Re: [U2] UD - Display Current Terminal Type Sorry, I thought it was available on both UV and UD. It is a valid verb on UV: GET.TERM.TYPE Wyse Technology 50/60 (W) Width : 127 Depth : 40 -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Bill Haskett Sent: Tuesday, April 23, 2013 9:09 PM To: U2 Users List Subject: Re: [U2] UD - Display Current Terminal Type :GET.TERM.TYPE Not a verb GET.TERM.TYPE :version Module Name Version Licensed UniData RDBMS 7.3 Yes Connection Pooling... 7.3 Yes Device License... 7.3 Yes NFA.. 7.3 No RFS.. 7.3 No EDA.. 7.3 No 733 Bill Untitled Page - Original Message - *From:* tewhitm...@ratex.com *To:* U2 Users List u2-users@listserver.u2ug.org *Date:* 4/23/2013 5:11 PM *Subject:* Re: [U2] UD - Display Current Terminal Type GET.TERM.TYPE will display the terminal type, width and depth. Tom Whitmore RATEX Business Solutions -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Bill Haskett Sent: Tuesday, April 23, 2013 5:12 PM To: U2 Mail List Subject: [U2] UD - Display Current Terminal Type I've had a brain-freeze and can't remember how to display the current terminal type at ECL. I know it's SYSTEM(7) but what ECL command do I need to display it? TERM doesn't work (although I can set it by entering TERM WYSE60). PTERM doesn't work (it gives me all kinds of other things). Any help would be appreciated. Bill ___ 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 Click https://www.mailcontrol.com/sr/MZbqvYs5QwJvpeaetUwhCQ== to report this email as spam. This message has been scanned for malware by Websense. www.websense.com ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] UD - Display Current Terminal Type
Thanks, Martin. This does the same thing !echo %TERM% does, where I noted that my SYSTEM(7) variable was Actwy60 while the results of this Windows environment variable was wyse60. When I noticed this my thoughts went to why? :-) Thanks again, Bill Untitled Page - Original Message - *From:* mbr...@epicor.com *To:* U2 Users List u2-users@listserver.u2ug.org *Date:* 4/24/2013 5:57 AM *Subject:* Re: [U2] UD - Display Current Terminal Type Not ECL, but UniBasic and should work in UD on either Unix or NT X=GETENV(TERM) PRINT X vt220 - Epicor Software (UK) is a limited company registered in England Wales. Registration Number: 2338274. Registered Office: 6th Floor, One London Wall, London EC2Y 5EB This e-mail and any attachments to it are confidential and is for the use of the intended recipient(s) only. If you have received this e-mail in error, please notify the sender immediately and then delete it. If you are not the intended recipient, you must not use, disclose or distribute this e-mail without the author's prior permission. We have taken precautions to minimize the risk of transmitting software viruses, but we advise you to carry out your own virus checks on any attachment to this message. We cannot accept liability for any loss or damage caused by software viruses. Any views and/or opinions expressed in this e-mail are of the author only and do not represent the views of Epicor Software (UK) Limited or any other company within its group. - -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tom Whitmore Sent: 24 April 2013 13:23 To: U2 Users List Subject: Re: [U2] UD - Display Current Terminal Type Sorry, I thought it was available on both UV and UD. It is a valid verb on UV: GET.TERM.TYPE Wyse Technology 50/60 (W) Width : 127 Depth : 40 -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Bill Haskett Sent: Tuesday, April 23, 2013 9:09 PM To: U2 Users List Subject: Re: [U2] UD - Display Current Terminal Type :GET.TERM.TYPE Not a verb GET.TERM.TYPE :version Module Name Version Licensed UniData RDBMS 7.3 Yes Connection Pooling... 7.3 Yes Device License... 7.3 Yes NFA.. 7.3 No RFS.. 7.3 No EDA.. 7.3 No 733 Bill Untitled Page - Original Message - *From:* tewhitm...@ratex.com *To:* U2 Users List u2-users@listserver.u2ug.org *Date:* 4/23/2013 5:11 PM *Subject:* Re: [U2] UD - Display Current Terminal Type GET.TERM.TYPE will display the terminal type, width and depth. Tom Whitmore RATEX Business Solutions -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Bill Haskett Sent: Tuesday, April 23, 2013 5:12 PM To: U2 Mail List Subject: [U2] UD - Display Current Terminal Type I've had a brain-freeze and can't remember how to display the current terminal type at ECL. I know it's SYSTEM(7) but what ECL command do I need to display it? TERM doesn't work (although I can set it by entering TERM WYSE60). PTERM doesn't work (it gives me all kinds of other things). Any help would be appreciated. Bill ___ 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 Click https://www.mailcontrol.com/sr/MZbqvYs5QwJvpeaetUwhCQ== to report this email as spam. This message has been scanned for malware by Websense. www.websense.com ___ 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
[U2] TCL input and response logging such as COMO
For PCI compliance, we are tasked to log/capture all TCL entries and responses. I am familiar with COMO, which is one possible solution. 1) What other TCL logging methods are available in UniVerse besides COMO? 2) What AIX Unix tools are available to capture keyboard input and responses at TCL? -- View this message in context: http://u2-universe-unidata.1073795.n5.nabble.com/TCL-input-and-response-logging-such-as-COMO-tp40528.html Sent from the U2 - Users mailing list archive at Nabble.com. ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] TCL input and response logging such as COMO
In UniVerse in the SAVEDLIST directory a user's TCL statements are saved as $$userid:user# Dan Goble | Senior Systems Engineer Interline Brands, Inc. 804 East Gate Drive Suite 100, Mount Laurel, NJ 08054 Office: 856.533.3110 | Mobile: 609.792.6855 E-mail: dan.go...@interlinebrands.com | Website: www.interlinebrands.com This e-mail and any files transmitted with it are confidential and intended solely for the individual or entity to whom they are addressed. Please notify the sender immediately by e-mail if you have received this e-mail in error and delete all copies of this message. -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Scott Zachary Sent: Wednesday, April 24, 2013 4:35 PM To: u2-users@listserver.u2ug.org Subject: [U2] TCL input and response logging such as COMO For PCI compliance, we are tasked to log/capture all TCL entries and responses. I am familiar with COMO, which is one possible solution. 1) What other TCL logging methods are available in UniVerse besides COMO? 2) What AIX Unix tools are available to capture keyboard input and responses at TCL? -- View this message in context: http://u2-universe-unidata.1073795.n5.nabble.com/TCL-input-and-response-logging-such-as-COMO-tp40528.html Sent from the U2 - Users mailing list archive at Nabble.com. ___ 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] TCL input and response logging such as COMO
Capturing TCL entries and responses is not related to PCI compliance, which is only related to payment card uses. -Original Message- From: Scott Zachary szach...@gardensalive.com To: u2-users u2-users@listserver.u2ug.org Sent: Wed, Apr 24, 2013 1:45 pm Subject: [U2] TCL input and response logging such as COMO For PCI compliance, we are tasked to log/capture all TCL entries and responses. I am familiar with COMO, which is one possible solution. 1) What other TCL logging methods are available in UniVerse besides COMO? 2) What AIX Unix tools are available to capture keyboard input and responses at TCL? -- View this message in context: http://u2-universe-unidata.1073795.n5.nabble.com/TCL-input-and-response-logging-such-as-COMO-tp40528.html Sent from the U2 - Users mailing list archive at Nabble.com. ___ 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] TCL input and response logging such as COMO
This is an automated response. Allen Bell will be out of town and unavailable until Monday, April 29th, 2013. On 4/24/2013 3:34 PM, Scott Zachary wrote: For PCI compliance, we are tasked to log/capture all TCL entries and responses. I am familiar with COMO, which is one possible solution. 1) What other TCL logging methods are available in UniVerse besides COMO? 2) What AIX Unix tools are available to capture keyboard input and responses at TCL? -- View this message in context: http://u2-universe-unidata.1073795.n5.nabble.com/TCL-input-and-response-logging-such-as-COMO-tp40528.html Sent from the U2 - Users mailing list archive at Nabble.com. ___ 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] TCL input and response logging such as COMO
I can't speak for UV, but we've been required to log all sessions for specific powerful users. It becomes a little simpler if you do it for all users. Make sure you have some type of automated purge of whatever log files you create or you'll probably start filling up your file system. This is what we're doing under UD7.1. Nothing fancy. We added this to our LOGIN: PQ HRUN DIR COMO.PROG P And here's what's in COMO.PROG USERS = 'user1, user2, user3' IF INDEX(USERS,@LOGNAME,1) 0 THEN FN = @LOGNAME:'_':@USERNO:'_':DATE():'_':TIME() DATA FN EXECUTE 'COMO ON' END U.S. BANCORP made the following annotations - Electronic Privacy Notice. This e-mail, and any attachments, contains information that is, or may be, covered by electronic communications privacy laws, and is also confidential and proprietary in nature. If you are not the intended recipient, please be advised that you are legally prohibited from retaining, using, copying, distributing, or otherwise disclosing this information in any manner. Instead, please reply to the sender that you have received this communication in error, and then immediately delete it. Thank you in advance for your cooperation. - ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] TCL input and response logging such as COMO
Hi, Can you provide more information on what you are trying to capture? (edits, list commands, etc.) I suspect that you may be able to put security on the commands you are concerned with and address the problem with less pain. The problem with using the command stack or a COMO is that they are easily modifiable. You may want to consider using a Unix Tee to capture all output which isn't as easy to turn off. Having said that, I'm not a Unix expert so I can't offer the command string you should use but I'm sure someone will provide it. Tom Whitmore RATEX Business Solutions -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of bradley.sch...@usbank.com Sent: Wednesday, April 24, 2013 5:06 PM To: U2 Users List Subject: Re: [U2] TCL input and response logging such as COMO I can't speak for UV, but we've been required to log all sessions for specific powerful users. It becomes a little simpler if you do it for all users. Make sure you have some type of automated purge of whatever log files you create or you'll probably start filling up your file system. This is what we're doing under UD7.1. Nothing fancy. We added this to our LOGIN: PQ HRUN DIR COMO.PROG P And here's what's in COMO.PROG USERS = 'user1, user2, user3' IF INDEX(USERS,@LOGNAME,1) 0 THEN FN = @LOGNAME:'_':@USERNO:'_':DATE():'_':TIME() DATA FN EXECUTE 'COMO ON' END U.S. BANCORP made the following annotations - Electronic Privacy Notice. This e-mail, and any attachments, contains information that is, or may be, covered by electronic communications privacy laws, and is also confidential and proprietary in nature. If you are not the intended recipient, please be advised that you are legally prohibited from retaining, using, copying, distributing, or otherwise disclosing this information in any manner. Instead, please reply to the sender that you have received this communication in error, and then immediately delete it. Thank you in advance for your cooperation. - ___ 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] TCL input and response logging such as COMO
Scott, One thing that I've seen in use on unix systems is the script command. You would put it in the user's .profile, or whatever startup script is executing UV/UD. The syntax of the command would be script -c uv/ud command logfile. Replace uv/ud command with the command that you use to start the database of your choice and replace logfile with a unique log file name. I've seen the unique filename generated with the date command, such as: date +%F_%H-%M-%S.%N. A simple example would be the following: Contents of .profile: Any OS setup goes here logfile=/usr/local/audit.logs/${USER}-`date +%F_%H-%M-%S.%N`.log cd /path/to/account exec script -c /path/to/uv ${logfile} -Mike -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Scott Zachary Sent: Wednesday, April 24, 2013 4:35 PM To: u2-users@listserver.u2ug.org Subject: [U2] TCL input and response logging such as COMO For PCI compliance, we are tasked to log/capture all TCL entries and responses. I am familiar with COMO, which is one possible solution. 1) What other TCL logging methods are available in UniVerse besides COMO? 2) What AIX Unix tools are available to capture keyboard input and responses at TCL? -- View this message in context: http://u2-universe-unidata.1073795.n5.nabble.com/TCL-input-and-response-logging-such-as-COMO-tp40528.html Sent from the U2 - Users mailing list archive at Nabble.com. ___ 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] TCL input and response logging such as COMO
I've used unix/linux tee before, but not with UV. I think this might work, though: `cat /.uvhome`/bin/uv tee /dirname/filename 21 -John -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tom Whitmore Sent: Wednesday, April 24, 2013 2:55 PM To: U2 Users List Subject: Re: [U2] TCL input and response logging such as COMO Hi, Can you provide more information on what you are trying to capture? (edits, list commands, etc.) I suspect that you may be able to put security on the commands you are concerned with and address the problem with less pain. The problem with using the command stack or a COMO is that they are easily modifiable. You may want to consider using a Unix Tee to capture all output which isn't as easy to turn off. Having said that, I'm not a Unix expert so I can't offer the command string you should use but I'm sure someone will provide it. Tom Whitmore RATEX Business Solutions -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of bradley.sch...@usbank.com Sent: Wednesday, April 24, 2013 5:06 PM To: U2 Users List Subject: Re: [U2] TCL input and response logging such as COMO I can't speak for UV, but we've been required to log all sessions for specific powerful users. It becomes a little simpler if you do it for all users. Make sure you have some type of automated purge of whatever log files you create or you'll probably start filling up your file system. This is what we're doing under UD7.1. Nothing fancy. We added this to our LOGIN: PQ HRUN DIR COMO.PROG P And here's what's in COMO.PROG USERS = 'user1, user2, user3' IF INDEX(USERS,@LOGNAME,1) 0 THEN FN = @LOGNAME:'_':@USERNO:'_':DATE():'_':TIME() DATA FN EXECUTE 'COMO ON' END U.S. BANCORP made the following annotations - Electronic Privacy Notice. This e-mail, and any attachments, contains information that is, or may be, covered by electronic communications privacy laws, and is also confidential and proprietary in nature. If you are not the intended recipient, please be advised that you are legally prohibited from retaining, using, copying, distributing, or otherwise disclosing this information in any manner. Instead, please reply to the sender that you have received this communication in error, and then immediately delete it. Thank you in advance for your cooperation. - ___ 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 ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users