The Life and Times of Jim |
Hi, there. I'm Jim. Welcome to my phlog! This site was written for Las Vegas, then LouisVille. Now, it seems to be about anywhere. In these phlogs, you'll see a lot of my personal notes and pictures. I like to post my observations here to remember life and celebrate it. I'm not religious. I don't pray for good fortune. I'm ecstatically grateful for the gift of life and I think our time should be remembered and not taken for granted. I'm not a writer. I think pictures tell stories so much better than words. I love just about everything in this life, and, I guess that would have to include you. So, if you've seen me, don't be surprised if your picture is in here somewhere. Of all the critters, people are absolutely the most interesting. |
|
08/26/2010 07:09:36 jim Computer Consultants are a strange group | Thu |||||||||||||||||||
Travelling computer consultants are a strange group. We all have two places we call home. We're broke between contracts, and rich during contracts. Most people don't want to see us when we're broke, and that's usually when we are hiding in our real homes. We've done things or are doing things that are outside the realm of normality. One buddy is walking across the country, another has programmed the Space Shuttle, and another is bartending. Some flourished with their own companies during the dot com boom, just to fall back into consulting. You never hear about us, but we do change the world. I've done some world-first, including adding some stuff to the ATM screens that you see all over the country. Usually, we come in, do incredible projects, make it work and leave. If it fails - We are responsible because we are idiots. Fortunately, I've never failed. If it works - Others are responsible. They almost always get promoted. The consultants either move on, go full time, or become managers and never code again. Rarely, if ever, our names get mentioned anywhere. We almost never get CC'd on the "Job well done" email from the CEO. But still, it gets into the blood. We know what we've done. Our abilities to work either independantly or in a group, has molded our ways of thinking. The travelling is great, the money is good, and we've gotten used to saying "Hello" and "Goodbye". At night, we either go insane with thought, or we're happy and we do things most locals would never even consider doing. Its an emotional roller coaster, and the adrenalene rush is addictive. And it would be hard for me to stop. (Spoken after 15 years of consulting, 5 years on the road, and 27 years in the business) |
08/26/2010 07:08:59 jim Our second airbed has gone flat in just one week. | Thu |||||||||||||||||||
Airbeds - Our second airbed has gone flat in just one week. It turned out our cot had a sharp edge. I wonder if there are other professionals out there who have had this problem. BTW - I'm not sure when or how I got so strange. Its happened slowly after 15 years of consulting. |
08/23/2010 04:15:06 jim Jennifer left Saturday | Mon |||||||||||||||||||
It's 3am on a Monday, and as usual, I can't wait to go to work. Jennifer went back to Vegas last Saturday, and I already miss her. So now, when I say we, I mean Becky and I. On the flip side, instead of doing just teenage things, we can do adult things too. I'm thinking Concerts! |
08/20/2010 19:23:44 jim Treasure Island, FL - Gators Cafe | Fri |||||||||||||||||||
08/19/2010 07:23:13 jim Jennifer is taking off Saturday | Thu |||||||||||||||||||
She has been so much fun! We've done a lot of travelling and beach combing in this Tampa Bay Area. But this is probably the worst time of the year to be here. It's hot and extemely humid. Tuesday, she gave quite the scare. She had an asthma attack. Here's my take on that: Medical care is such nightmare these days. Jennifer had an asthma attack and she's on Nevada Medicaid. Medicaid is only covered out-of-state in Emergency rooms. We found one, and after 2 hours they put her in one of those little rooms where she waited for 2 hours. Finally after they gave her an XRay, a breathing treatment and a prescription. The whole thing took 5 hours. It makes me wonder how many people don't survive in those little rooms. This makes me think If she didn't have any kind of insurance, I'm sure that visit would have cost $1,000. For $1,000, she could have flown her to Mexico or Canada, where she could stayed in a nice motel, and she could have bought Albuterol over the counter for $12. Of course, she could have had a bird flu, in which case, everyone in the Emergency Room might have caught it. Scary! |
08/17/2010 20:13:35 jim Tampa Bay Skies | Tue |||||||||||||||||||
08/16/2010 20:25:11 jim ClearwaterBeach Sunset | Mon |||||||||||||||||||
08/16/2010 20:25:07 jim ClearwaterBeach - The Girls | Mon |||||||||||||||||||
08/16/2010 05:14:42 jim Lots of Gulls | Mon |||||||||||||||||||
08/15/2010 20:08:47 jim ClearwaterBeach-Extras | Sun |||||||||||||||||||
08/11/2010 19:18:20 jim Clearwater Beach | Wed |||||||||||||||||||
08/09/2010 03:49:19 jim The Only Living Boy in Tampa | Mon |||||||||||||||||||
It was pouring sheets of rain and I was listening to "The Only Living Boy in New York" in the Westshore Mall parking lot. Lightening was all around me. And I was feeling alone, smiling, thinking I was the Only Living Boy who has ever really listened to that song. It was a good day to have the blues. I'd heard some things said that took me there I probably shouldn't listen or care. Listening attempts to add thought to what is being said, and most of what is said is without thought. Caring hurts, when what is heard malicious or cold, either through mindlessnes, or out of lack of empathy. Sometimes I feel like the world is trampling flowers while I'm walking around them. And I wonder, what is the point. |
08/08/2010 22:54:30 jim Are the flowers natural? | Sun |||||||||||||||||||
08/08/2010 18:36:42 jim Apt Birds | Sun |||||||||||||||||||
08/08/2010 17:48:02 jim Clearwater - Rt 60 Bridge | Sun |||||||||||||||||||
08/06/2010 20:21:29 jim All fame lies in your name. | Fri |||||||||||||||||||
I knew a girl who made a fortune and fame in clothing lines way back in the 80's, only to fall grace. She named her clothing lines after herself. Her name was, Polly Ester. |
08/06/2010 20:19:59 jim BOY ! IT IS HOT AND HUMID OUT THERE | Fri |||||||||||||||||||
BOY ! IT'S HOT AND HUMID OUT THERE!!! The Worlds Deadliest Catch people would catch Steamed Crab here. It'll probably pour again tonight. It poured today. They should have named this state Fluida. |
08/03/2010 20:42:56 jim Clearwater Rain | Tue |||||||||||||||||||
08/03/2010 17:54:55 jim RJ Storms | Tue |||||||||||||||||||
08/03/2010 07:19:03 jim Antonios, Nails, and Beef-O-Bradys | Tue |||||||||||||||||||
Becky and Jennifer had their nails done yesterday (their first manicure). Jennifer picked a color that, well, is pretty unusual, but it sparkles. Becky's nails were two toned. Looks good. I met them at lunch time at Antonios, which is an excellent Italian restaurant on our block. Later, we dined at Beef O Bradys. Today was their Grand Openning. We met the Owner/Manager, the food was great, and guess what, its on our block. Good food, good times, lots of love...thats what life should be about. At work, I'm playing the role of problem solver for our somewhat large project, and believe I'm pretty good at it. Eventually, all the people in my group come by to ask about something. It's a privilage I very much enjoy. On the quit smoking front. We didn't pull off going cold turkey last Saturday, but we did come up with a nice, modified plan to cut down. We're keeping our smokes in the back of my truck. Becky's down to 8 smokes a day, and I'm down to 12. That's really good, considering we were smoking anywhere from 20 to 40 cigarettes a day. Now this is odd, cutting down on smoking isn't uncomfortable at all. And when Becky and I go out to smoke, Jennifer comes along. We flip open the tail gate, enjoy the sky show, and laugh about the little things in life. It goes to show, people can change, and even though change may seem bad, it can be a good thing. |
08/02/2010 06:57:02 jim Hot off the press - Flatworms | Mon |||||||||||||||||||
After extensive gene therapy at Sensadyn Labs, a flat worm has actually learned to play the guitar. It's favorite song - Layla |
07/30/2010 22:02:36 jim Webcamming 2010 | Fri |||||||||||||||||||
07/29/2010 20:37:48 jim PathMake example | Thu |||||||||||||||||||
?TACL MACRO comment ******************************************************************* comment * This Macro Creates a Cold start obey file for a runnig pathway * comment *-----------------------------------------------------------------* comment * This example uses $EXP as a pathmon name * comment * To run this macro, enter * comment * * comment * PATHCFG $EXP * comment * * comment * The Cold Start obey file this will create will be called GOEXP * comment * To bring up $EXP using the cold start file enter: * comment * * comment * O GOEXP * comment * * comment * This will create a cool start file for $EXP called EXPCTL * comment * The log1 file will be called EXPLOG * comment * GOEXP, EXPCTL, EXPLOG will be created in the current subvolume * comment * The configuration's pathway will be call $P.#PATHMON.EXP * comment * * comment * This macro can also be run for several pathmons by entering: * comment * * comment * PATHCFG $EXP $MNTF $STORE $ZVPT * comment * * comment *-----------------------------------------------------------------* [#if [#empty %1%] |then| #output They Syntax is: PATHCTL $PW #output where $PW is a running pathway system |else| [#DEF ascii STRUCT BEGIN BYTE byt0 VALUE 7; CHAR bell REDEFINES byt0; BYTE byt1 VALUE 27; CHAR esc REDEFINES byt1; BYTE byt2a VALUE 36; CHAR dollar REDEFINES byt2a; BYTE byt2 VALUE 37; CHAR perc REDEFINES byt2; BYTE byt3 VALUE 38; CHAR amp REDEFINES byt3; BYTE byt4 VALUE 64; CHAR at REDEFINES byt4; BYTE byt5 (0:1) VALUE 27 73; CHAR clr (0:1) REDEFINES byt5; == escape sequence END; ] #push Norm Blink Invert Dim #set Norm [ascii:esc]6[ascii:at] #set Blink [ascii:esc]6b #set Invert [ascii:esc]6[ascii:dollar] #set Dim [ascii:esc]6[ascii:perc] #push PathwayProcess PathWayLen PathwayName #set PathwayProcess %1% #set PathWayLen [#Compute [#charcount PathwayProcess] - 1] #set PathwayName [#charget PathwayProcess 2 for [#Compute [#charcount PathwayProcess] - 1]] #output comment #output [Dim] [invert]Pathcfg %1%[Dim] [norm] #output [Dim]Builds an obey file called [invert]GO[PathwayName] [Dim] to start [invert]%1%[norm] #output To run this %1% should be up and running [#case [#INPUT [BLINK]Should I proceed "Y" ?[NORM ]] |Y| #output Please wait... PURGE GO[PathwayName] PATHCOM %1%;INFO/OUT GO[PathwayName]/PATHWAY,OBEYFORM edit GO[PathwayName]!;99990/LOG1 [PathwayName]LOG/;NA;E edit GO[PathwayName];10000/START PATHWAY COLD !/;NA;E PATHCOM %1%;INFO/OUT GO[PathwayName]/TCP*,OBEYFORM PATHCOM %1%;INFO/OUT GO[PathwayName]/SERVER *,OBEYFORM PATHCOM %1%;INFO/OUT GO[PathwayName]/PROGRAM *,OBEYFORM PATHCOM %1%;INFO/OUT GO[PathwayName]/TERM *,OBEYFORM == edit GO[PathwayName];CQF/-- /A;NA;10000/-- EXIT/;NA;E edit GO[PathwayName];.01/COMMENT *------------------------------------------------/;e edit GO[PathwayName];.02/COMMENT *----- Obey GO[PathwayName] to start $[PathwayName]/;e edit GO[PathwayName];.03/COMMENT *------------------------------------------------/;e edit GO[PathwayName];.04/#PUSH INLINEPREFIX/;E edit GO[PathwayName];.05/#SET INLINEPREFIX --/;E edit GO[PathwayName];.06/assign PATHCTL, [PathwayName]CTL/;E edit GO[PathwayName];.07/PURGE [PathwayName]LOG/;E edit GO[PathwayName];.08/FUP CREATE [PathwayName]LOG,TYPE E, REC 132, EXT(100,100), MAXEXTENTS 100/;E edit GO[PathwayName];.09"PATHMON/cpu 2,name $[PathwayName],nowait,term $vhs/3";E edit GO[PathwayName];.10"PATHCOM/inline,out $P.#PATHWAY.[PathwayName]/$[PathwayName]";na;e |OTHERWISE| #output OK. POOF! I'm gone. ] #output [#if [#empty %2%] |then| |else| run PATHCFG %2 to 99% ] ] == First If |
07/29/2010 20:35:46 jim ZMacros w/CNL - Needs Adapting | Thu |||||||||||||||||||
== Macros: == COMP srcfile1 srcfile2 Compiles, with the nolist option == COMPP srcfile1 srcfile2 ... Compiles to $P.#srctype.srcfile == COMPF srcfile1 srcfile2 ... Compiles to $dev2.TESTLST == CK srcfile Checks your subvolumes.srcfile to TEST's ?SECTION set_SysIni MACRO var CdVol \test.$dev2.TEST var LstVol \test.$dev2.TESTLST var SrcVol \test.$dev2.TESTSRC [#case [#charget [#shiftstring SrcFile] 1 for 3] |SUB| var TST_OBJ \test.$dev2.subobj.[SrcFile]O var ObjVol \test.$dev2.subobj var TST_REN \test.$dev2.OLDobj.[SrcFile]X |otherwise| var TST_OBJ \test.$dev2.TESTOBJ.[SrcFile]O var ObjVol \test.$dev2.TESTOBJ var TST_REN \test.$dev2.OLDobj.[SrcFile]X ] var TST_POBJ \test.$dev1.FEDROBJ.FED1 var ObeyVol_VOL \test.$dev1.TEST ?section doc macro volume $dev2.TESTdoc ?section fil macro volume $DEV4.TURBOFIL ?section blk macro volume $dev2.TESTBLK ?section OB macro echo volume $dev2.TESTOBEY ?section LIB macro ECHO VOLUME $dev1.COPYSRC ?section LST macro echo volume $dev2.TESTLST ?section SRC MACRO [#if [#empty %1%] |then| volume $dev2.TESTSRC |else| #set SrcFile %1% set_SysIni ] ?SECTION ENF MACRO echo VOLUME $dev2.TESTENF ?section gl macro var SrcFile echo edit $dev2.TESTlst.[SrcFile]S ?section ck macro var SrcFile %1% [#case [#charget [#shiftstring SrcFile] 1 for 1] |N| fup info (%1%,dev1.COPYSRC.%1%) |otherwise| fup info (%1%,$dev2.TESTSRC.%1%) ] ?SECTION Echoto MACRO var EchoOut %1% ?section ECHO macro #output %*% %*% ?section var macro [#if [#variableinfo/existence/ %1%] |else| #push %1%] [#if [#empty %2%] |then| |else| #set %1% %2 to 99%] ?section FREEZE MACRO var PcServer var PcName [#IF [#EMPTY %1%] |THEN| |else| #set PCServer %1% ] [#IF [#EMPTY %1%] |THEN| |else| [#IF [#EMPTY %2%] |THEN| var PcServer %1% |else| var PcName %1% var PcServer %2% ] ] [#if [#emptyv PcName] |then| var PcName [#input Enter the Pathway System: ($MNTF):] ] [#if [#emptyv PcServer] |then| var PcServer [#input Enter the Pathway Server (TESTPOST-SERVER):] ] PATHCOM [PcName];FREEZE [PCServer] PATHCOM [PcName];STOP [PCServer] PATHCOM [PcName];STOP [PCServer] [#if [#empty %2%] |then| |else| FREEZE %2 TO 99%] ?section THAW MACRO var PcServer [#IF [#EMPTY %1%] |THEN| |else| #SET PCServer %1% ] PATHCOM [PcName];THAW [PCServer] [#if [#empty %3%] |then| |else| THAW %1% %3 TO 99%] ?section START MACRO var PcServer [#IF [#EMPTY %1%] |THEN| |else| #SET PCServer %1% ] PATHCOM [PcName];START [PCServer] [#if [#empty %3%] |then| |else| START %1% %3 TO 99%] ======================= ?section debugon macro ====================== [#IF [#EMPTY %1%] |THEN| |else| [#IF [#EMPTY %2%] |THEN| var PcServer %1% |else| var PcName %1% var PcServer %2% ] ] [#if [#emptyv PcName] |then| var PcName [#input Enter the Pathway System: ($MNTF):] ] [#if [#emptyv PcServer] |then| var PcServer [#input Enter the Pathway Server (TESTPOST-SERVER):] ] #push me #set me [#myterm] freeze echo pathcom [PcName];alter [PCServer],hometerm [me],debug on thaw #pop me ?section debugoff macro ======================= var PcName %1% var PcServer %2% freeze pathcom [PcName];alter [PCServer],hometerm $VHS,debug off thaw ?section copy macro fup dup %1%,%2%,saveall fup secure %2%,"nnnn" ?section cinfo macro var SrcFile [#IF [#EMPTY %1%] |THEN| |ELSE| #SET SrcFile %1% set_SysIni ] fup/inline/ -- info $dev2.TESTSRC.[SrcFile]s -- info $dev2.TESTOBJ.[SrcFile]o -- exit ?section pout macro #SET #INLINEPREFIX -- peruse /inline/$ppls -- ll;le/out TESTlst.x/a;del -- ll;le/out TESTlst.x/a;del -- ll;le/out TESTlst.x/a;del -- ll;le/out TESTlst.x/a;del -- ll;le/out TESTlst.x/a;del -- ll;le/out TESTlst.x/a;del -- ll;le/out TESTlst.x/a;del -- ll;le/out TESTlst.x/a;del -- ll;le/out TESTlst.x/a;del -- cqf/`/ -- dq/` / -- cqa/`//a -- e ?section fs alias finddata ?section grep alias finddata %*% ?section OK macro [#case [#input RUN %*% (y)?] |y Y| echo %*% |otherwise|] #output --------------------------------------------- ?SECTION PCLS MACRO SPOOLCOM $SPLS;JOB (OWNER),DELETE ! SPOOLCOM $PPLS;JOB (OWNER),DELETE ! ?SECTION SV MACRO FUP SUBVOLS %*% ?section Type macro fup copy %1% ?section p macro [#if [#empty %1%] |then| peruse $PPLS |else| peruse $SPLX] ?SECTION INFODEFINE MACRO #FRAME #PUSH X1 X2 X3 X4 #SETMANY X1 X2 X3 X4,[#DEFINEINFO %1%] #OUTPUT/HOLD/ADD DEFINE %1% #OUTPUT/HOLD,COLUMN 25/,CLASS [X2] #OUTPUT/COLUMN 40/,[X3] [X4] #UNFRAME [#if [#empty %2%] |then| |else| INFODEFINE %2 to 99%] ?SECTION CREATEDEFINES MACRO PURGE XD INFO/OUT XD/DEFINE =* EDIT XD;DQN/=/;CQ/ Define Name / INFODEFINE /A;E PURGE DEFINES #PUSH #OUT #SET #OUT DEFINES O XD #POP #OUT EDIT DEFINES;DQ/INFODEFINE/;E EDIT DEFINES [#if [#empty %2%] |then| |else| INFODEFINE %2 to 99%] ?SECTION ST MACRO [#IF [#EMPTY %1%] |THEN| STATUS *,TERM |ELSE| STATUS %*% ] ?SECTION DelY MACRO [#IF [#FILEINFO/EXISTENCE/%1%] |THEN| FILEINFO %1% [#CASE [#INPUT Do you wish to delete this (y)?] |y Y| purge %1% |otherwise| ] ] ?SECTION FS ALIAS FINDDATA ?SECTION CALC ALIAS COMPUTE ?SECTION COMPARE macro $dev2.jimobj.COMPARE %*% ?section PC MACRO var PcName [#if [#empty %1%] |then| ECHO pathcom [PcName] |else| #set PcName %*% ECHO pathcom %*%] ?section OBJ MACRO ECHO $dev2.TESTOBJ ?section TL macro LOAD/KEEP 1/$dev2.TESTSRC.ZMACROS ?section GT macro edit $dev2.TESTSRC.ZMACROS;set tabs 10 20 30 40 50 60 70;%1 TO 9% ?section R macro var TST_OBJ var Src [#if [#empty %1%] |then| |else| SRC %1%] ECHO RUN [TST_OBJ] %2 to 99% ?section RD macro var TST_OBJ [#if [#empty %1%] |then| |else| SRC %1%] RUND [TST_OBJ] ?section DEFINESX macro [#if [#empty %*%] |then| echo INFO DEFINE =* |ELSE| echo INFO DEFINE %*%] ?section CD macro [#if [#empty %1%] |then| |else| Var CdVol %1%] volume [CdVol] ?section G macro var EditLastSrc %*% EDIT;SET TABS 10 20 30 40 50 60 70;SET JOIN 80;G [EditLastSrc] ?section GS macro var SrcFile %*% EDIT;SET TABS 10 20 30 40 50 60 70;SET JOIN 80;G [SrcFile]S ?section O macro var ObeyVol %1% [#if [#emptyv ObeyVol] |then| #output ([ObeyVol]) doesn't exist. |else| [#if [#fileinfo/existence/[ObeyVol]] |then| #push Found edit /OUTV Found,PRI 139/[ObeyVol] R;LB/?SECTION/RB/ ROUTINE/RN/*/;E [#if [#linecount Found] > 2 |then| echo T [ObeyVol] |ELSE| echo OBEY [ObeyVol] ] #pop Found |else| #output The default Obey File hasn't been set yet. Try: O obeyfile ] ] [#if [#empty %2%] |then| |else| O %2 to 99%] ?section BYE macro ======================== CSAVE LOGOFF ?section CLOAD macro ======================== #PUSH WS_VOLUME #SET WS_VOLUME [#DEFAULTS] VOLUME O DEFAULTS VOLUME [WS_VOLUME] #POP WS_VOLUME ?section CSAVE macro ======================== #push WS_VOLUME #set WS_VOLUME [#DEFAULTS] VOLUME #FRAME #PUSH #INLINEPREFIX #SET #INLINEPREFIX -- edit/INLINE/DEFAULTS ! -- DQ ! F/L -- na;100 /#set PCName [PCName]/ -- na;100 /#set PCServer [PCServer]/ -- na;100 /#set SrcFile [SrcFile]/ -- na;100 /#set ObeyVol [ObeyVol]/ -- na;100 /#set CdVol [CdVol]/ -- na;100 /#set SrcFile [SrcFile]/ -- na;100 /#set COut [COut]/ -- na;100 /#set EditLastSrc [EditLastSrc]/ -- na;100 /#set CdVol [CdVol]/ -- E VOLUME [WS_VOLUME] #UNFRAME ?section FILESPEC macro [#if [#fileinfo /existence/ %1%] |then| #output /hold/ [#fileinfo/fullname/ %1%] #output /column 35,hold/ [#case [#fileinfo /filestructure/ %1%] |0| #output /hold/ U: |1| #output /hold/ R: |2| #output /hold/ E: |3| #output /hold/ K: |otherwise| ] #output /column 37,hold/ [#fileinfo/eof/ %1%] #output /column 44,hold/& [_CONTIME_TO_TEXT [#CONTIME [#fileinfo/modification/%1%]]] #output /column 72,hold/ [#fileinfo/owner/ %1%] |else| #output /hold/ File %1% does not exist ] #output ?section SCUPINFO macro #frame #push OUTLIST SCUP /OUTV OUTLIST/INFO %*% #output [#LINEGET OUTLIST 1 FOR 1] #output [#LINEGET OUTLIST 5 FOR 1] #unframe ?section CCOMPARE macro ======================= var SrcFile %1% set_SrcFile [SrcFile] compare [SrcFile]s, $tech1d.source.[SrcFile]s [#if [#empty %2%] |then| |else| CCOMPARE %2 to 99%] ?section set_SrcFile macro ========================= var SrcFile %1% set_SysIni ?section COMPF macro ======================= var PrintFile file COMP_CheckSrc %1% [#if [#empty %2%] |then| |else| COMPF %2 TO 99%] ?SECTION CL ALIAS COMPP ?section COMPP macro ======================= var PrintFile print COMP_CheckSrc %1% [#if [#empty %2%] |then| |else| COMPP %2 TO 99%] ?SECTION CNL ALIAS COMP ?section COMP macro ======================= var PrintFile none COMP_CheckSrc %1% [#if [#empty %2%] |then| |else| COMP %2 TO 99%] ?section COMP_CheckSrc macro ======================= [#IF [#FILEINFO/EXISTENCE/DEFINES] |THEN| O DEFINES] set_SrcFile %1% SET_SrcLanguage [#case [PrintFile] |file| echo FUP PURGE $dev2.TESTLST.[SrcFile]! #set PrintFile $dev2.TESTLST.[SrcFile] |print| echo SPOOLCOM $PPLS;JOB (LOC #[SrcLanguage].[SrcFile]),DELETE! #set PrintFile $P.#[SrcLanguage].[SrcFile] |otherwise| #set PrintFile ] [#case [SrcLanguage] |SQL| COMP_SQL |SCOBOL| COMP_SCOBOL |C| COMP_C |TAL| COMP_TAL |otherwise| >>>> Can't Compile [SrcFile] ] ?section SET_SrcLanguage macro var SrcFile #push TMP_SRC TMP_OBJ [#if [#fileinfo/existence/ [SrcFile]S] |then| #set TMP_SRC [SrcFile]S #set TMP_OBJ [SrcFile]O |else| [#if [#fileinfo/existence/ [SrcFile]] |then| #set TMP_SRC [SrcFile] #set TMP_OBJ [SrcFile] ] ] [#if [#empty [TMP_SRC]] |then| #output Cannot locate [SrcFile] |else| CheckSource [TMP_SRC] [TMP_OBJ] ] #pop TMP_SRC ?section CheckSource macro ========================== var SrcLanguage SQL #push Found edit /OUTV Found,PRI 139/%1% R;LB/ SCREEN /RB/ SECTION/RN/*/;E [#if [#linecount Found] > 2 |then| #SET SrcLanguage SCOBOL ] #pop Found #push Found edit /OUTV Found,PRI 139/%1% R;LB/ $SYSTEM.SYSTEM.EXTDECS/;E [#if [#linecount Found] > 2 |then| #SET SrcLanguage TAL ] #pop Found #push Found edit /OUTV Found,PRI 139/%1% R;LB/#include/r/;e [#if [#linecount Found] > 2 |then| #SET SrcLanguage C ] #pop Found #output ------ SOURCE IS [SrcLanguage] #push Found #set Found %1% [#case [#charget [#shiftstring Found] 1 for 1] |N| SrcLanguage |otherwise| ] #pop Found ?section COMP_SCOBOL macro #OUTPUT ------------------------ SCOBOL ------------------------------ #PUSH MYS #SET MYS [#FILEINFO/VOLUME/[SrcFile]S].[#FILEINFO/SUBVOL/[SrcFile]S] echo VOLUME $dev1.COPYSRC [#IF [#EMPTYV PrintFile] |THEN| echo SCOBOLX/IN [MYS].[SrcFile]S/[TST_POBJ];NOLIST |ELSE| echo SCOBOLX/IN [MYS].[SrcFile]S,OUT [PrintFile]/[TST_POBJ] ] [#IF (_COMPLETION:COMPLETIONCODE > 1) |THEN| #OUTPUT **** ERROR **** CHECK %1% ] ECHO VOLUME [MYS] #POP MYS #OUTPUT -------------------------------------------------------------- ?section COMP_TAL macro ========================= #push MYS #set MYS [#FILEINFO/VOLUME/[SrcFile]S].[#FILEINFO/SUBVOL/[SrcFile]S] echo VOLUME $dev1.COPYSRC #output ------------------------------------------------------------ TAL BEG [#IF [#EMPTYV PrintFile] |THEN| echo TAL/IN [MYS].[SrcFile]S/[TST_OBJ];RUNNABLE;NOLIST |ELSE| echo TAL/IN [MYS].[SrcFile]S/[TST_OBJ];RUNNABLE echo TAL/IN [MYS].[SrcFile]S,OUT [PrintFile]/[TST_POBJ] ] [#IF (_COMPLETION:COMPLETIONCODE > 1) |THEN| #OUTPUT **** ERROR **** CHECK %1% ] echo VOLUME [MYS] #pop MYS #output ------------------------------------------------------------ TAL END ?section COMP_C macro ========================= #PUSH MYS #push MYS #set MYS [#FILEINFO/VOLUME/[SrcFile]S].[#FILEINFO/SUBVOL/[SrcFile]S] echo VOLUME $dev1.COPYSRC #output -------------------------------------------------------------- C BEG [#IF [#EMPTYV PrintFile] |THEN| echo C/IN [MYS].[SrcFile]S/[TST_OBJ];RUNNABLE,NOLIST |ELSE| echo C/IN [MYS].[SrcFile]S,OUT [PrintFile]/[TST_OBJ];RUNNABLE,NOLIST ] [#IF (_COMPLETION:COMPLETIONCODE > 1) |THEN| #OUTPUT **** ERROR **** CHECK %1% ] ECHO VOLUME [MYS] #POP MYS #output -------------------------------------------------------------- C END ?SECTION COMP_SQL MACRO ======================= #PUSH MYS #push MYS #set MYS [#FILEINFO/VOLUME/[SrcFile]S].[#FILEINFO/SUBVOL/[SrcFile]S] echo VOLUME $dev1.COPYSRC echo PARAM SYMBOL-BLOCKS 8 [#IF [#fileinfo/existence/ [TST_REN]] |then| ECHO SQLCI;PURGE [TST_REN] !;EXIT] [#IF [#fileinfo/existence/ [TST_OBJ]] |then| ECHO SQLCI;FUP RENAME [TST_OBJ],[TST_REN];EXIT] #output ---------------------------------------------------------COBOL85 BEG [#IF [#EMPTYV PrintFile] |THEN| echo COBOL85/IN [MYS].[SrcFile]S/[TST_OBJ];nolist;SUPPRESS;ENV COMMON |else| echo cobol85/IN [MYS].[SrcFile]S,OUT [PrintFile]/[TST_OBJ];ENV COMMON ] ECHO VOLUME [MYS] [#IF (_COMPLETION:COMPLETIONCODE > 1) |THEN| #OUTPUT **** COBOL85 ERROR **** |ELSE| #OUTPUT ---- COBOL85 SUCCESSFULL #output ---------------------------------------------------------COBOL85 END COMP_SQLCOMP %1% ] ?SECTION COMP_SQLCOMP MACRO =========================== #PUSH LstVol #output -------------------------------------------------------- SQLCOMP BEG echo SQLCOMP/IN [TST_OBJ],OUTV LstVol/CATALOG $DEV3.MISCCATL [#IF ([#LINEFIND LstVol 1 No SQL source ]>0) |THEN| #OUTPUT Sql Compiling is not needed for this program |ELSE| [#IF (_COMPLETION:COMPLETIONCODE < 0) |THEN| #OUTPUT *** SQLCOMP WARNING *** CHECK $P.#COBOL.[SrcFile] #PUSH #OUT #SET #OUT $P.#SQLCOMP.[SrcFile] #OUTPUTV LstVol #POP #OUT |ELSE| [#IF (_COMPLETION:COMPLETIONCODE > 1) |THEN| #OUTPUT **** SQLCOMP ERROR **** CHECK $P.#SQLCOMP.[SrcFile] #PUSH #OUT #SET #OUT $P.#SQLCOMP.[SrcFile] #OUTPUTV LstVol #POP #OUT |ELSE| #output SQLCOMP successful: [_COMPLETION:COMPLETIONCODE] #PUSH #OUT #SET #OUT $P.#SQLCOMP.[SrcFile] #OUTPUTV LstVol #POP #OUT ] ] ] #output -------------------------------------------------------- SQLCOMP END #POP LstVol ?SECTION PRINT MACRO FUP COPY %1%,$P [#if [#empty %2%] |then| |else| PRINT %2 to 99%] ?SECTION SQCOST MACRO SQLCOMP/IN $dev2.TESTOBJ.%1%,OUT $P.#SQCOST/ & STOREDDEFINES EXPLAIN PLAN NORECOMPILE ?section LOG macro [#if [#empty %1%] |then| EDIT $dev2.TEST.LOG2009;XVS L-20;E |else| #frame #push #out #set #width 230 #push wYY wMM wDD wHH wMI #setmany wYY wMM wDD wHH wMI, [#contime [#timestamp]] [#IF [wYY]< 10 |THEN| #SET wYY 0[wYY]] [#IF [wMM]< 10 |THEN| #SET wMM 0[wMM]] [#IF [wDD]< 10 |THEN| #SET wDD 0[wDD]] [#IF [wHH]< 10 |THEN| #SET wHH 0[wHH]] [#IF [wMI]< 10 |THEN| #SET wMI 0[wMI]] #set #out $dev2.TEST.LOG[wYY] #output [wMM]/[wDD]/[wYY] [wHH]:[wMI]-> %*% #set #width 80 #pop #out #unframe ] ?section dir ALIAS fileinfo ?section sv macro fup subvols %1% ?SECTION CLS MACRO #FRAME [#DEF ascii STRUCT BEGIN BYTE byt5(0:1) value 27 73; CHAR clr(0:1) redefines byt5; END; ] #OUTPUT [ascii:clr(0:1)] #UNFRAME ?section tt macro var tfile %1% t [tfile] ?section file macro volume $dev2.testfile |
07/28/2010 20:43:56 jim Lavendar Skies | Wed |||||||||||||||||||
07/24/2010 17:44:10 jim Pond Life-Birds and Turtles | Sat |||||||||||||||||||
<< 08/2009 < 07/2010 Calendar 09/2010 > 08/2011 >> | Sign InView Other Logs |