The utility comes in two flavours - a UDC written by Alfredo Rego at Adager and a command-file version by Ken Robertson here at Robelle.
archive filename [,groupname = "Source"]The account created is called ARyymmdd. The source group is the default. You need to have PM capability in order to run this UDC.
Format: archive filename [,groupname = "!HPCWD"] Example: archive trialmai.ktsrc /SOURCE A copy of trialmai.ktsrc was archived to /MISDEV/SOURCE/ar_19971204_1422/trialmai.ktsrc
archive file, group="Source" comment option list comment Archives to TODAY's date, as calculated by the system SetVar nPoint, pos (".", "!file") if nPoint <> 0 then echo There is a dot in position !nPoint of the file's UNQUALIFIED name. echo The file's group name is the SECOND parameter, separated by a "," echo thus: ":archive file, group" (the default group is "source", echo the default account is aryymmdd, where "yymmdd" are "today"). Eoj endif continue SetVar ArAcct "ar" SetVar ArAcct ArAcct + "!HpYear" if HpMonth < 10 then SetVar ArAcct ArAcct + "!zero" endif SetVar ArAcct ArAcct + "!HpMonth" if HpDate < 10 then SetVar ArAcct ArAcct + "!zero" endif SetVar ArAcct ArAcct + "!HpDate" continue NewAcct !ArAcct, Alfredo; pass=... continue NewGroup !Group.!ArAcct copy !file.!group, !file.!group.!ArAcct; ask echo echo copied !file.!group to !file.!group.!ArAcct **********
parm filename="?", home_dir="default" if "!filename"="?" then echo echo Usage: Archive filename echo This command file places a copy of your the input file into an echo archive directory based on today's date and time. For example, echo echo archive foo.src [ homegroup=!hpcwd ] echo echo will be copied to a new directory called echo echo !hpcwd/ar19970511_1102/foo.src echo echo You can specify a relative location in which to store your echo archive directory. For example, echo echo archive foo.src /DEVL/SOURCE echo echo The default relative location is your current working directory, echo as defined from the HPCWD variable. echo return endif if not finfo("!filename","exists") then echo *************************************************************************** echo * Sorry, !filename does not exist. echo *************************************************************************** return endif comment setup the archive directory name. It is composed of comment ar_19yymmdd_hhmm comment comment Once HP gets around to supporting year 2000 in a variable, then comment the addition of "19" should be removed. comment setvar archive_dir "ar_19" + "!hpyear" if hpmonth < 10 then setvar archive_dir archive_dir + "0" + "!hpmonth" else setvar archive_dir archive_dir + "!hpmonth" endif if hpday < 10 then setvar archive_dir archive_dir + "0" + "!hpday" else setvar archive_dir archive_dir + "!hpday" endif setvar archive_dir archive_dir + "_" if hphour < 10 then setvar archive_dir archive_dir + "0" + "!hphour" else setvar archive_dir archive_dir + "!hphour" endif if hpminute < 10 then setvar archive_dir archive_dir + "0" + "!hpminute" else setvar archive_dir archive_dir + "!hpminute" endif setjcw cierror 0 continue if "!home_dir" = "default" then setvar my_home_dir hpcwd else setvar my_home_dir "!home_dir" if rht(my_home_dir,1) = "/" then setvar my_home_dir lft(my_home_dir, len(my_home_dir) - 1) endif endif continue newdir !my_home_dir/!archive_dir > errfile setvar my_cierror cierror if my_cierror = 906 then echo Warning! The directory already exists. Using it anyways. setjcw cierror 0 else if my_cierror <> 0 then echo *************************************************************************** echo * Unable to create a new directory echo * !my_home_dir/!archive_dir echo * CIERROR = !cierror echo * The error message returned is: print errfile echo *************************************************************************** return endif endif continue copy !filename, !my_home_dir/!archive_dir/!filename > errfile if cierror <> 0 then echo *************************************************************************** echo * Unable to copy the file! echo * Tried: copy !filename .!archive_dir/!filename echo * CIERROR = !cierror echo * The error message returned is: print errfile echo *************************************************************************** return else echo echo A copy of !filename was archived to !my_home_dir/!archive_dir/!filename endif
....Back to the Qedit Q&A Page