TITLE 'WERS 98 - TIME SERIES Version 1.2' . SUBTITLE 'GET98TS' . COMMENT Purpose: Reads in the 1998 data and derives 'time series' variables . COMMENT Input file: "o:\wers98\mainq\deposit\mq98fin.sav" (Deposited data file) . COMMENT Output file: "o:\wers98\longit\deposit\dat98ts.sav" . COMMENT Last updated: Dec 2001 . *********************************************** . COMMENT First conduct some editing of the 1998 deposited data file . COMMENT The editing syntax is publicly available from the web-site of the COMMENT WERS98 Data Dissemination Service at: http://www.niesr.ac.uk/niesr/wers98/ . get file="o:\wers98\mainq\deposit\mq98fin.sav" . include "o:\wers98\dataserv\Newnotes\Mq98fix.sps" . include "o:\wers98\dataserv\epq_flag.sps" . include "o:\wers98\dataserv\recogfix\recogfix.sps" . match files file=* /table="o:\wers98\mainq\deposit\restrict\mqsicfin.sav" /by serno . weight off . select if zallemps>=25 . *********************************************** . COMMENT Rename some variables that can be used without further derivation . RENAME variables (zallemps=tallemps) (zmalfull=tftmale) (zfemfull=tftfem) (zemp1ago=temp1ago) (zemp5ago=temp5ago) (zdismiss = tdisnum) (eothreps=tothreps) (hprocedu=tprocgrv) (hraised = traised) (hothpro=tprocdis) (hwarning = twarning) (hsuspend = tsuspend) (hdeduct = tdeduct) (hsusnum = tsancnum) (hcomplai=tcomplai) (gpicket=tpicket) (jreduct = treduct) (kproser = tproser) (jtemplyr=ttemplyr) (jagency=tagency) (jwrkfree=twrkfree) (inuminj=tnuminj) (kvalsal=tvalsal) (kestper1 = testper1) (kestper2 = testper2) (kprosal=tlabcost) (mrelate = tstatir) . EXECUTE. *********************************************** . COMMENT YEAR . NUMERIC year (f4.0) . COMPUTE year=1998 . variable labels year "Year of survey" . *********************************************** . COMMENT TALLEMPS . variable labels tallemps "Total number of employees at establishment" . *********************************************** . COMMENT TEMP1AGO . formats temp1ago (f5.0) . recode temp1ago (sysmis, 999999=99999) (999998=99998) . missing values temp1ago (99998,99999) . variable labels temp1ago "Total number of employees 12 months ago" . value labels temp1ago 99998 "DK" 99999 "NA" . *********************************************** . COMMENT TEMP5AGO . formats temp5ago (f5.0) . recode temp5ago (sysmis, 999999=99999) (999998=99998) . missing values temp5ago (99998,99999) . variable labels temp5ago "Total number of employees 5 years ago" . value labels temp5ago 99998 "DK" 99999 "NA" . *********************************************** . COMMENT TALLFEM . numeric tallfem (f5.0) . do if (zmf_flg=1) . + compute tallfem=99999 . else . + compute tallfem=sum.2(tftfem,zfemprt) . end if . missing values tallfem (99999) . variable labels tallfem "Total number of female employees" . value labels tallfem 99999 "DK/NA" . *********************************************** . COMMENT TFTMALE, TFTFEM, TALLFT, TALLPT . numeric tallft tallpt (f5.0) . do if (zmf_flg=1) . + recode tftmale tftfem (else=99999) . else . + recode tftmale tftfem (sysmis,99998=99999) . end if . do if (zmf_flg=1) . + compute tallft=99999 . else . + compute tallft=sum.2(tftmale,tftfem) . end if . do if (zmf_flg=1) . + compute tallpt=99999 . else . + compute tallpt=sum.2(zmalprt,zfemprt) . end if . missing values tftmale tftfem tallft tallpt (99999) . variable labels tftmale "Total number of male full-time employees" /tftfem "Total number of female full-time employees" /tallft "Total number of full-time employees" /tallpt "Total number of part-time employees" . value labels tallft tallpt tftmale tftfem 99999 "DK/NA" . execute . *********************************************** . COMMENT TALLNM . numeric tallnm (f6.0) . do if (zocc_flg=1) . + compute tallnm=99999 . else if (zocc_flg=0) . + compute tallnm=sum(zmng_tot,zpro_tot,ztec_tot,zcle_tot,zsal_tot) . end if . missing values tallnm (99999) . variable labels tallnm "Total number of non-manual employees" . value labels tallnm 99999 "DK/NA" . *********************************************** . COMMENT TEMPC5 . numeric tempc (f3.2) . missing values zethnic () . do if (missing(zethnic) or zethnic=9998) . + compute tempc=999 . else if (zethnic=9999) . + recode zethnicp (9999.99=999) (else=copy) into tempc . else if (zethnic<9998) . + compute tempc=(zethnic*100)/tallemps . end if . missing values tempc (999) . variable labels tempc "Percentage of ethnic minority employees" . value labels tempc 999 "DK/NA" . COMMENT TEMPC5 . numeric tempc5 (f1.0) . recode tempc (0=1) (0.01 thru 4.99=2) (5.0 thru 10.49=3) (10.50 thru 19.49=4) (19.50 thru 100=5) (999=9) into tempc5 . missing values tempc5 (9) . variable labels tempc5 "Percentage of ethnic minority employees" . value labels tempc5 1 "None" 2 "Less than 5%" 3 "5-10%" 4 "11-19%" 5 "20% or more" 9 "DK/NA" . *********************************************** . COMMENT TMGRFPC . numeric tmgrfpc (f3.2) . do if (missing(zmng_tot) or (zocc_flg=1 and missing(zmng_tot)=0 and zmng_tot=0) or zmng_flg=1) . + compute tmgrfpc=999 . else if (zocc_flg=0 and zmng_tot=0) . + compute tmgrfpc=998 . else if (zmng_flg=0) . + compute tmgrfpc=((zmng_fft+zmng_fpt)*100)/zmng_tot . end if . missing values tmgrfpc (998,999) . variable labels tmgrfpc "Female managers as % of all managers" . value labels tmgrfpc 0 "No female managers" 998 "No managers at w/p" 999 "DK/NA" . *********************************************** . COMMENT TANYMEM . rename variables (eanyemp=tanymem) . variable labels tanymem "Any union members?" . *********************************************** . COMMENT TNUMMEMA, TUDENSA . numeric tnummema (f5.0) /tudensa (f5.2) . do if (tanymem=2) . + compute tudensa=0 . else if (tanymem=1) . + do if missing(ztu_mem)=0 . + compute tudensa=((ztu_mem*100)/tallemps) . + if (tudensa=0 and ztu_mem>0) tudensa=1 . + if (tudensa=100 and ztu_mem=25 . + recode tage (9=4) . end if . variable labels tage "Age of establishment" . value labels tage 1 "Less than 5 years" 2 "5-9 years" 3 "10-24 years" 4 "25+ years" 9 "DK/NA" . *********************************************** . COMMENT TTIMHERE . numeric ttimhere (f1.0) . recode ahowlong (0 thru 4=1) (5 thru 9=2) (10 thru 20=3) (21 thru 997=4) (999=9) into ttimhere . variable labels ttimhere "Years at current address" . value labels ttimhere 1 "Less than 5 years" 2 "5-9 years" 3 "10-20 years" 4 "21+ years" 9 "DK/NA" . missing values ttimhere (9) . *********************************************** . COMMENT TTIMHER7 . numeric ttimher7 (f1.0) . recode ahowlong (5 thru 9=5) (10 thru 20=6) (21 thru 997=7) (999=9) (else=copy) into ttimher7 . variable labels ttimher7 "Years at current address" . value labels ttimher7 5 "5-9 years" 6 "10-20 years" 7 "21+ years" 9 "DK/NA" . missing values ttimher7 (9) . *********************************************** . COMMENT TADDRESS . rename variables (address2=taddress) . do if (missing(ahowlong) or ahowlong>9) . + recode taddress (else=sysmis) . end if . variable labels taddress "Whether always operated at current address" . *********************************************** . COMMENT TPREV . rename variables (aprev=tprev) . do if (missing(taddress) or taddress=1) . + recode tprev (else=sysmis) . end if . variable labels tprev "Activity at site before establishment arrived" . *********************************************** . COMMENT TSEX . rename variables (bsex=tsex) . variable label tsex 'Gender of respondent'. value labels tsex 1 'Male' 2 'Female'. *********************************************** . COMMENT TTITLE *** Verbatims from BTITLE manually recoded by Alex Bryson to TTITLE code frame **** *** Matched on here from separate data file, along with TSPECIAL *** . COMPUTE serno=9800000+serno . execute . match files file=* /table='o:\wers98\longit\98data\dat98ta2.sav' /by serno. select if tallemps>=25 . execute . COMPUTE serno=serno-9800000 . execute . formats ttitle (f2.0) . missing values ttitle (98) . *** Code frame: *value labels ttitle 1 'General management function' 2 'Personnel management function' 3 'Employee/Industrial/Staff Relations manager' 4 'Accountant/finance function' 5 'Production/Works/Factory/Plant manager' 6 'Branch/Depot/Establishment manager' 7 'Marketing/Commercial/Sales function' 8 'Professional/technical staff' 9 'Other' 98 'DK/NA'. *********************************************** . COMMENT TSPECIAL . *** Matched on with TTITLE - see above *** . formats tspecial (f1.0) . ************************************** . COMMENT TYOURJ01..TYOURJ05 . numeric tyourj01 to tyourj05 (f1.0) . do if missing(byourj01) . + recode tyourj01 to tyourj05 (else=9) . else if missing(byourj01)=0 . + compute tyourj01=any(1,byourj01 to byourj09) . + compute tyourj02=any(2,byourj01 to byourj09) . + compute tyourj03=any(3,byourj01 to byourj09) . + compute tyourj04=any(4,byourj01 to byourj09) . + compute tyourj05=any(6,byourj01 to byourj09) . end if . recode tyourj01 to tyourj05 (0=2) . missing values tyourj01 to tyourj05 (9) . variable labels tyourj01 "Responsible for pay or conditions" /tyourj02 "Responsible for recruitment or selection" /tyourj03 "Responsible for training" /tyourj04 "Responsible for systems of payment" /tyourj05 "Responsible for staffing or manpower planning" . value labels tyourj01 tyourj02 tyourj03 tyourj04 tyourj05 1 'Yes' 2 'No' 9 'DK/NA' . *********************************************** . COMMENT TMANAGE . rename variable (bumanage=tmanage) . missing values tmanage (9). variable label tmanage 'Respondent has senior responsibility for ER at establishment'. value labels tmanage 1 'Yes' 2 'No' 9 'DK/NA'. *********************************************** . COMMENT TERTIME. rename variables (bproport=tertime) . missing values tertime (999) . variable labels tertime 'Percentage of time spent on employee relations issues' . value labels tertime 999 "DK/NA" . *********************************************** . COMMENT TERTIMEA . numeric tertimea (f1.0) . do if (missing(tertime) = 1). compute tertimea = 3. else if (tertime lt 25). compute tertimea = 1. else. compute tertimea = 2. end if. variable labels tertimea 'More or less than 25 % of time spent on ER issues' . value labels tertimea 1 'Less than 25 per cent' 2 'More than 25 per cent' 3 'Other'. **************************************** . COMMENT TLENGTH . rename variables (blength=tlength) . recode tlength (20 thru 97 = 6) (15 thru 20 = 5) (10 thru 15 = 4) (5 thru 10 = 3) (2 thru 5 = 2) (Lowest thru 2 = 1) (98, 99 = 9) (ELSE=COPY). missing values tlength (9). variable label tlength 'Length of service in current job (6 category)'. value labels tlength 1 'Less than 2 years' 2 '2 years - less than 5 years' 3 '5 years - less than 10 years' 4 '10 years - less than 15 years' 5 '15 years - less than 20 years' 6 '20 years or more' 9 'Dont know / Not answered'. *********************************************** . COMMENT TLENGTHB . numeric tlengthb (f1.0) . recode tlength (1 = 1) (2 = 2) (3 thru 6 = 3) (ELSE = COPY) into tlengthb. missing values tlengthb (9). variable label tlengthb 'Length of service in current job (3 category)' . value labels tlengthb 1 'Less than 2 years' 2 '2 years - less than 5 years' 3 '5 years or more' 9 'Dont know / Not answered'. *********************************************** . COMMENT TSERVICE . numeric tservice (f1.0) . do if missing(tertimea)=0 and tertimea=2 . + recode bservice (10 thru 97 = 4) (5 thru 10 = 3) (2 thru 5 = 2) (Lowest thru 2 = 1) (sysmis,98,99=9) (else=copy) into tservice . end if . missing values tservice (9). variable label tservice 'Length of experience in ER'. value labels tservice 1 'Less than 2 years' 2 '2 years - less than 5 years' 3 '5 years - less than 10 years' 4 '10 years or more' 9 'Dont know / Not answered'. *********************************************** . COMMENT TSERVICB . numeric tservicb (f1.0) . recode tservice (2 thru 4 = 1) (1 = 2) (else = copy) into tservicb. missing values tservicb(9). variable labels tservicb 'Whether spent two or more years in ER'. value labels tservicb 1 'Yes' 2 'No' 9 'Dont know / Not answered'. *********************************************** . COMMENT THAVQUAL numeric thavqual (f1.0) . do if missing(tertimea)=0 and tertimea=2 . + recode bhavqual (8,9,sysmis=9) (else=copy) into thavqual . end if . missing values thavqual (9). variable labels thavqual 'Whether any formal qualifications in personnel management' . value labels thavqual 1 'Yes' 2 'No' 9 'DK/NA'. *********************************************** . COMMENT TASSIST . numeric tassist (F1.0) . recode bassist (0=2) (1 thru 96 = 1) (97, 98, 99=9) (else=copy) into tassist . variable labels tassist "Whether any personnel or employee relations staff" . value labels tassist 1 'Yes' 2 'No' 9 'DK/NA'. missing values tassist (9) . *********************************************** . COMMENT TSEPAR . numeric tsepar (f1.0) . do if missing(tsingle)=0 and tsingle=2 and missing(tho)=0 and any(tho,2,3) . + recode bsepar (8, 9, sysmis = 9) (else = COPY) into tsepar . end if . missing values tsepar (9). variable label tsepar 'Whether contact with ER specialist higher up in organisation' . value labels tsepar 1 'Yes' 2 'No' 9 'DK/NA'. *********************************************** . COMMENT TBOARD . numeric tboard (f1.0) . do if missing(tstatus)=0 and tstatus=1 and missing(tsingle)=0 and tsingle=2 and missing(tukfo)=0 and any(tukfo,1,2) . + recode bboard (8, 9, sysmis = 9) (else = COPY) into tboard . end if . missing values tboard (9). variable label tboard 'Whether ER representation on governing body'. value labels tboard 1 'Yes' 2 'No' 9 'DK/NA'. *********************************************** . COMMENT TEASS . numeric teass (F1.0) . do if (missing(bmember1) = 1). compute teass = 9. else if (bmember1 = 1 | bmember2 = 1 | bmember3 = 1 | bmember4 = 1 ). compute teass = 1. end if. recode teass (sysmis = 2). variable labels teass 'Establishment is a member of an Employers Association'. value labels teass 1 'Yes' 2 'No' 9 'Dont know / Not answered'. missing values teass (9). **************************************** . COMMENT TADVICE1-TADVICE4 . numeric tadvice1 to tadvice4 (f1.0) . do if missing(badvice1) . + recode tadvice1 to tadvice4 (else=9) . else if missing(badvice1)=0 . + compute tadvice1=(any(1,badvice1 to badvice7) or any(9,badvice1 to badvice7)) . + compute tadvice2=any(3,badvice1 to badvice7) . + compute tadvice3=any(4,badvice1 to badvice7) . + compute tadvice4=any(5,badvice1 to badvice7) . end if . recode tadvice1 to tadvice4 (0=2) . missing values tadvice1 to tadvice4 (9) . variable labels tadvice1 "Sought advice from ACAS or other government agency" /tadvice2 "Sought advice from management consultants" /tadvice3 "Sought advice from external lawyers" /tadvice4 "Sought advice from external accountants". value labels tadvice1 tadvice2 tadvice3 tadvice4 1 'Yes' 2 'No' 9 'DK/NA' . *************************************************************** . COMMENT TCONSALL, TCIRLES, TBRIEF, TCHAIN, TSUGGEST, TNEWS. numeric tconsall tchain tsuggest tnews tbrief (f1.0) . recode dconsul2 to dconsul6 dbrief dbriefu1 to dbriefu4 dbriefn (sysmis=100) . missing values dconsul1 to dconsul6 dbrief dbriefu1 to dbriefu4 dbriefn () . compute tconsall=(dconsul1=1 or dconsul2=1 or dconsul3=1 or dconsul4=1 or dconsul5=1 or dconsul6=1) . compute tchain=(dconsul1=2 or dconsul2=2 or dconsul3=2 or dconsul4=2 or dconsul5=2 or dconsul6=2) . compute tnews=(dconsul1=4 or dconsul2=4 or dconsul3=4 or dconsul4=4 or dconsul5=4 or dconsul6=4) . compute tsuggest=(dconsul1=3 or dconsul2=3 or dconsul3=3 or dconsul4=3 or dconsul5=3 or dconsul6=3) . recode tconsall tchain tsuggest tnews (0=2) . execute . recode dothway1 to dothway5 (sysmis=100) . do if (tsuggest=2) . + do if (dothway1>=98) . + compute tsuggest=9 . + else if (dothway1=2 or dothway2=2 or dothway3=2 or dothway4=2 or dothway5=2) . + compute tsuggest=1 . + end if . end if . do if (dbrief=1 and (any(1,dbriefu1 to dbriefu4) or any(2,dbriefu1 to dbriefu4)) and dbriefn<=4) . + compute tbrief=1 . else if (dbrief=9 or dbriefu1=99 or dbriefn=9) . + compute tbrief=9 . else . + compute tbrief=2 . end if . missing values tconsall to tbrief (9) . variable labels tconsall "Regular meetings with entire workforce" /tchain "Systematic use of management chain" /tsuggest "Suggestion schemes" /tnews "Regular newsletters" /tbrief "Briefing groups" . value labels tconsall to tbrief 1 "Yes" 2 "No" 9 "DK/NA" . rename variables (dcircles=tcircles) . variable labels tcircles "Problem-solving groups/Quality Circles" . *********************************************** . COMMENT TINVPLAN, TFINANCE, TORGFIN, TSTAFFIN . numeric tinvplan tfinance torgfin tstaffin (f1.0) . recode dinvplan dfinance dwholefi dstaffin (else=copy) into tinvplan tfinance torgfin tstaffin . missing values tinvplan tfinance torgfin tstaffin (8,9) . variable labels tinvplan "Shares info about investment plans" /tfinance "Shares info about estab's financial position" /torgfin "Shares info about org's financial position" /tstaffin "Shares info about staffing/manpower plans" . value labels tinvplan tfinance torgfin tstaffin 1 "Yes" 2 "No" 8 "DK" 9 "NA" . *********************************************** . COMMENT TINFO . numeric tinfo (f1.0) . recode torgfin (sysmis=2) (else=copy) into org . missing values org (8,9) . do if ((missing(tfinance)=0 and tfinance=1) or (missing(org)=0 and org=1)) . + compute finchk=1 . else if (missing(tfinance)=0 and tfinance=2 and missing(org)=0 and org=2) . + compute finchk=0 . else if (missing(tfinance) or missing(org)) . + compute finchk=9 . end if . recode tinvplan tstaffin (2=0) (else=copy) into invchk stafchk . missing values invchk finchk stafchk (8,9) . do if (missing(invchk)=0 and missing(finchk)=0 and missing(stafchk)=0) . + compute tinfo=sum(invchk,finchk,stafchk) . else if (missing(invchk) or missing(finchk) or missing(stafchk)) . + compute tinfo=9 . end if . missing values tinfo (9) . variable labels tinfo "Scope of information provision to employees or reps" . value labels tinfo 0 "No info provision" 1 "Low: One area only" 2 "Medium: Two areas" 3 "High: All three areas" 9 "DK/NA" . *********************************************** . COMMENT TJCC. numeric tjcc (f1.0) . recode djoint (else=copy) into tjcc . if (dissues=2) tjcc=2 . variable labels tjcc "Any joint consultative committees?" . missing values tjcc (9) . value labels tjcc 1 "Yes" 2 "No" 8 "DK" 9 "NA" . *********************************************** . COMMENT TJCCFREQ . numeric tjccfreq (f1.0) . recode dmeet (12 thru 96 = 1) (4 thru 11 = 2) (2,3 = 3) (1 = 4) (0 = 5) (97,98,99 = 9) (else=copy) into tjccfreq . missing values tjccfreq (9) . variable labels tjccfreq "Frequency of JCC meetings" . value labels tjccfreq 1 "At least once a month" 2 "At least every 3 months" 3 "At least every 6 months" 4 "Every year" 5 "Less often" 9 "DK/NA" . *********************************************** . COMMENT TJCCTU . numeric tjcctu (f1.0) . missing values dappoin1 () . do if (tanymem=1) . + do if (tjcc=1) . + recode dappoin1 (3=1) (1 thru 97=2) (98,99=9) into tjcctu . + end if . + do if (tjcctu=2) . + if (dappoin2=3 or dappoin3=3 or dappoin4=3) tjcctu=1 . + end if . end if . variable labels tjcctu 'Jcc members chosen by union/staff assoc.' . value labels tjcctu 1 'Yes' 2 'No' 9 'DK/NA'. missing values tjcctu (9). *********************************************** . COMMENT TJCCHI . numeric tjcchi (f1.0) . do if (aconhead=2 or asingle=3) . + recode dhighlev (sysmis,8=9) (else=copy) into tjcchi . end if . missing values tjcchi (9) . variable labels tjcchi "Any higher level committee in organisation?" . value labels tjcchi 1 "Yes" 2 "No" 9 "DK/NA" . *********************************************** . COMMENT TJCCNUM . numeric tjccnum (f2.0) . recode dhowmany (else=copy) into tjccnum . do if (missing(tjcc) or tjcc=2) . + recode tjccnum (else=sysmis) . end if . variable labels tjccnum "Number of jccs" . value labels tjccnum 99 "DK/NA" . missing values tjccnum (99) . *********************************************** . COMMENT TJCCNUM . numeric tjccinf (f1.0) . recode dinfluen (else=copy) into tjccinf . do if (missing(tjcc) or tjcc=2) . + recode tjccinf (else=sysmis) . end if . missing values tjccinf (9) . variable labels tjccinf "How influential is JCC?" . value labels tjccinf 1 "Very influential" 2 "Fairly influential" 3 "Not very influential" 4 "Not at all influential" . *********************************************** . COMMENT TUNINUM . recode eunionum (else=copy) into tuninum . recode tuninum (98=99) (99=98) . formats tuninum (f3.0) . missing values tuninum (98,99) . variable labels tuninum "Number of unions present at the establishment" . value labels tuninum 98 "DK" 99 "NA" . *********************************************** . COMMENT TTOTREC . numeric ttotrec (f3.0) . recode etotrec (else=copy) into ttotrec . do if (missing(tuninum) and tanymem=1). + recode ttotrec (else = 97). else if (tanymem=2) . + recode ttotrec (else=99) . end if. missing values ttotrec (97,99). variable labels ttotrec "Number of recognised unions" . value labels ttotrec 97 "DK/NA; members present" 99 "No union members" . *********************************************** . COMMENT TRECOG numeric trecog (f1.0) . do if (value(ttotrec)=99). + compute trecog = 3. else if (value(ttotrec)=97). + compute trecog = 2. else if (missing(ttotrec)=0 and ttotrec=0). + compute trecog = 2. else if (missing(ttotrec)=0 and ttotrec>0). + compute trecog=1 . end if. variable labels trecog "Are any unions recognised for collective bargaining purposes?" . value labels trecog 1 'Union recognised' 2 'Members no recognition' 3 'No union members' . *********************************************** . COMMENT TCLSHOP . numeric tclshop (f1.0) . missing values ekeepjob eoughto () . do if (trecog=1) . + do if (ekeepjob=1) . + compute tclshop=1 . + else if (ekeepjob=2 and eoughto=1) . + compute tclshop=2 . + else if (ekeepjob=2 and eoughto=2) . + compute tclshop=3 . + else if (ekeepjob>=8 or eoughto>=8) . + compute tclshop=9 . + end if . end if . missing values tclshop (9) . variable labels tclshop "Union membership arrangements" . value labels tclshop 1 "Closed shop for some employees" 2 "Strong recommendation only" 3 "Neither" 9 "DK/NA" . *********************************************** . COMMENT TPREENT . numeric tpreent (f1.0) . do if missing(tclshop)=0 and tclshop=1 . + recode ehaveto (8=9) (else=copy) into tpreent . end if . missing vales tpreent (9) . variable label tpreent "Pre-entry closed shop" . value labels tpreent 1 'Yes' 2 'No' 9 'DK/NA' . *********************************************** . COMMENT TCHECKOF . numeric tcheckof (f1.0) . do if missing(tanymem)=0 and tanymem=1 . + recode ededuct (else=copy) into tcheckof . end if . missing values tcheckof (8,9). variable label tcheckof "If arrangement for deduction of union dues" . value labels tcheckof 1 'Yes' 2 'No' 8 'Dont know' 9 'Not answered'. execute. *********************************************** . COMMENT TUREP, TUREPNUM, TFTUREP and TEXTREP . do if trecog=1 . + recode esteward estewtim estewext (8=9) (else=copy) into turep tfturep textrep . end if . formats turep tfturep textrep (f1.0) . missing values turep tfturep textrep (9) . variable labels turep "Any union rep present at the establishment?" /tfturep "Any full-time union rep present at the establishment?" /textrep "Any external rep covering members at the establishment?" . value labels turep tfturep textrep 1 "Yes" 2 "No" 9 "DK/NA" . numeric turepnum (f3.0) . do if missing(turep)=0 and turep=1 . + recode estewnum (98,99=999) (else=copy) into turepnum . end if . missing values turepnum (999) . variable labels turepnum "Number of union reps at workplace" . value labels turepnum 999 'Dont know / Not answered'. *********************************************** . COMMENT TOTHREPS . variable labels tothreps "Any non-union reps?" . *********************************************** . COMMENT TOTHREP2 . numeric tothrep2 (f1.0) . recode echosen1 echosen2 (sysmis=100) . do if (tanymem=2) . + compute tothrep2=tothreps . end if . do if (echosen1=3 or echosen2=3) . + recode tothrep2 (1=2) . end if . missing values tothrep2 (9) . variable labels tothrep2 "Presence of non-union reps" . value labels tothrep2 1 "Non-union rep present" 2 "No rep" 9 "DK/NA" . *********************************************** . COMMENT TPROCGRV . formats tprocgrv (f1.0) . variable labels tprocgrv "Whether formal procedures for dealing with individual grievances" . *********************************************** . COMMENT TRAISED . formats traised (f1.0) . recode traised (8=9). variable labels traised "Any matters raised through grievance procedure in last 12 months" . value labels traised 1 'Yes' 2 'No' 9 'Dont know / Not answered'. missing values traised (9). *********************************************** . COMMENT TPROCDIS . formats tprocdis (f1.0) . variable labels tprocdis "Whether formal procedures for dealing with discipline and dismissals other than redundancies" . *********************************************** . COMMENT TDISNUM . formats tdisnum (f4.0) . recode tdisnum (sysmis=9999) . missing values tdisnum (9998,9999) . variable labels tdisnum "Number of employees dismissed in last 12 months" . value labels tdisnum 9998 "DK" 9999 "NA" . ********************************************* . COMMENT TSANCNUM . formats tsancnum (f5.0) . missing values tsancnum (99998,99999) . *********************************************** . COMMENT TNGROUP1 and TNGROUP2 . numeric tngroup1 tngroup2 (f2.0) . do if (ttotrec=1) . + compute tngroup1=1 . else if (ttotrec>1 and missing(ejoint)) . + compute tngroup1=99 . else if (ttotrec>1 and ejoint=1) . + compute tngroup1=1 . else if (ttotrec>1 and ejoint>1) . + recode egroups (0=99) (else=copy) into tngroup1 . end if . do if (ttotrec>1) . + recode tngroup1 (else=copy) into tngroup2 . end if . recode tngroup1 tngroup2 (4 thru 96=3) . missing values tngroup1 tngroup2 (99) . variable labels tngroup1 "Number of negotiating groups" /tngroup2 "Number of negotiating groups" . value labels tngroup1 tngroup2 3 "3+" 99 "DK/NA" . *********************************************** . COMMENT In creating the collective bargaining variables for 1998, the derived variables created by Fsocfix.sps have been used . COMMENT The Fsocfix editing syntax is publicly available from the web-site of the COMMENT WERS98 Data Dissemination Service at: http://www.niesr.ac.uk/niesr/wers98/ . *********************************************** . COMMENT TALLCOV . match files file=* /file='O:\WERS98\DATASERV\FSOCFIX\Fsocfix.sav' /by serno . select if tallemps>=25 . execute . rename variables (ncovtot=tallcov) (ncovpc=tcovpc) (ncovpc6=tcovpc6) (ncovpc7=tcovpc7) (ncovpc3=tcovpc3) . execute . *********************************************** . COMMENT TNATBARG . numeric tnatbarg (f2.0) . missing values nfsoc1 to nfsoc9 () . recode nfsoc1 to nfsoc9 (sysmis=100) . execute . do if (trecog=1) . + do if (any(1,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9)=1) . + compute tnatbarg=1 . + else if (any(8,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9) or any(9,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9) or (nfsoc1=100 and nfsoc2=100 and nfsoc3=100 and nfsoc4=100 and nfsoc5=100 and nfsoc6=100 and nfsoc7=100 and nfsoc8=100 and nfsoc9=100)) . + compute tnatbarg=9 . + else . + compute tnatbarg=2 . + end if . end if . * Note: some cases where no m/emp bargaining, but national level decision mentioned on Fwhere for LOG Could recode (although only for multis), but not sure that w/p bound by decision: might have just followed it. * Left as is. missing values tnatbarg (9,99) . variable labels tnatbarg "Any multi-employer bargaining?" . value labels tnatbarg 1 "Yes" 2 "No" 9 "DK/NA; all bg units surveyed" 99 "DK: some units not surveyed". execute . *********************************************** . COMMENT TORGBARG . numeric torgbarg (f2.0) . do if (trecog=1) . + do if (any(2,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9)=1) . + compute torgbarg=1 . + else if (any(8,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9) or any(9,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9) or (nfsoc1=100 and nfsoc2=100 and nfsoc3=100 and nfsoc4=100 and nfsoc5=100 and nfsoc6=100 and nfsoc7=100 and nfsoc8=100 and nfsoc9=100)) . + compute torgbarg=9 . + else . + compute torgbarg=2 . + end if . end if . missing values torgbarg (9,99) . variable labels torgbarg "Any multi-site bargaining?" . value labels torgbarg 1 "Yes" 2 "No" 9 "DK/NA; all bg units surveyed" 99 "DK: some units not surveyed". execute . *********************************************** . COMMENT TESTBARG. numeric testbarg (f2.0) . do if (trecog=1) . + do if (any(3,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9)=1) . + compute testbarg=1 . + else if (any(8,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9) or any(9,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9) or (nfsoc1=100 and nfsoc2=100 and nfsoc3=100 and nfsoc4=100 and nfsoc5=100 and nfsoc6=100 and nfsoc7=100 and nfsoc8=100 and nfsoc9=100)) . + compute testbarg=9 . + else . + compute testbarg=2 . + end if . end if . missing values testbarg (9,99) . variable labels testbarg "Any estab-level bargaining?" . value labels testbarg 1 "Yes" 2 "No" 9 "DK/NA; all bg units surveyed" 99 "DK: some units not surveyed". execute . *********************************************** . COMMENT TEXTSET . numeric textset (f1.0) . do if (missing(tcovpc6)=0 and tcovpc6>1) . + do if (any(7,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9)=1) . + compute textset=1 . + else if (any(8,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9) or any(9,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9) or (nfsoc1=100 and nfsoc2=100 and nfsoc3=100 and nfsoc4=100 and nfsoc5=100 and nfsoc6=100 and nfsoc7=100 and nfsoc8=100 and nfsoc9=100)) . + compute textset=9 . + else . + compute textset=2 . + end if . end if . missing values textset (9) . variable labels textset "Any external pay setting for uncovered workers?" . value labels textset 1 "Yes" 2 "No" 9 "DK/NA" . execute . *********************************************** . COMMENT TORGSET . numeric torgset (f1.0) . do if (missing(tcovpc6)=0 and tcovpc6>1) . + do if (any(4,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9)=1) . + compute torgset=1 . + else if (any(8,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9) or any(9,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9) or (nfsoc1=100 and nfsoc2=100 and nfsoc3=100 and nfsoc4=100 and nfsoc5=100 and nfsoc6=100 and nfsoc7=100 and nfsoc8=100 and nfsoc9=100)) . + compute torgset=9 . + else . + compute torgset=2 . + end if . end if . missing values torgset (9) . variable labels torgset "Any multi-site pay setting for uncovered workers?" . value labels torgset 1 "Yes" 2 "No" 9 "DK/NA" . execute . *********************************************** . COMMENT TESTSET . numeric testset (f1.0) . do if (missing(tcovpc6)=0 and tcovpc6>1) . + do if (any(5,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9)=1) or (any(6,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9)=1) . + compute testset=1 . + else if (any(8,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9) or any(9,nfsoc1,nfsoc2,nfsoc3,nfsoc4,nfsoc5,nfsoc6,nfsoc7,nfsoc8,nfsoc9) or (nfsoc1=100 and nfsoc2=100 and nfsoc3=100 and nfsoc4=100 and nfsoc5=100 and nfsoc6=100 and nfsoc7=100 and nfsoc8=100 and nfsoc9=100)) . + compute testset=9 . + else . + compute testset=2 . + end if . end if . missing values testset (9) . variable labels testset "Any estab-level pay setting for uncovered workers?" . value labels testset 1 "Yes" 2 "No" 9 "DK/NA" . execute . *********************************************** . COMMENT TPAYDET . numeric tpaydet (f2.0) . recode tpaydet (else=sysmis) . * Some recog but DK coverage . do if (missing(tcovpc3)) . + compute tpaydet=17 . end if . * Coverage 50% or more : look at methods of bargaining . do if (tcovpc3=1) . + recode tnatbarg (1=1) (2=4) (9=5) (99,sysmis=6) into tpaydet . end if . do if (tcovpc3=1 and tpaydet=4) . + recode torgbarg (1=2) into tpaydet . end if. do if (tcovpc3=1 and tpaydet=4) . + recode testbarg (1=3) into tpaydet . end if. execute . * Coverage 1-49% : look at pay setting for uncovered workers . do if (tcovpc3=2) . + recode textset (1=7) (2=10) (9=11) into tpaydet . end if . do if (tcovpc3=2) and tpaydet=10 . + recode torgset (1=8) into tpaydet . end if . do if (tcovpc3=2) and tpaydet=10 . + recode testset (1=9) into tpaydet . end if . execute . * Coverage zero (where recog or none) : look at pay setting for uncovered workers (where recog) or * all workers . do if (tcovpc3=3) . + recode textset (1=12) (2=15) (9=16) into tpaydet . end if . do if (tcovpc3=3 and tpaydet=15) . + recode torgset (1=13) into tpaydet . end if . do if (tcovpc3=3 and tpaydet=15) . + recode testset (1=14) into tpaydet . end if . execute . variable labels tpaydet "Principal locus of pay determination" . value labels tpaydet 1 "Multi-employer bargaining" 2 "Multi-site bargaining" 3 "W/place-level bargaining" 4 "Other" 5 "DK; all bg units surveyed" 6 "DK; some units not surveyed" 7 "External body" 8 "Higher in organisation" 9 "Estab-level" 10 "Other" 11 "DK; low coverage" 12 "External body" 13 "Higher in organisation" 14 "Estab-level" 15 "Other" 16 "DK; zero coverage" 17 "Recog but DK coverage" . *********************************************** . COMMENT TCOMPLAI . recode tcomplai (8=9) . missing values tcomplai (9). value labels tcomplai 1 'Yes' 2 'No' 9 'DK/NA'. *********************************************** . COMMENT TCOMNUM . numeric tcomnum (f6.0) . do if (missing(tcomplai)) . + compute tcomnum=999999 . else if (missing(tcomplai)=0 and tcomplai=1) . + if (missing(hcomnum)) tcomnum=999999 . + if (missing(hcomnum)=0) tcomnum=hcomnum . else if (missing(tcomplai)=0 and tcomplai=2) . + compute tcomnum=0 . end if . missing values tcomnum (999999) . variable labels tcomnum "Number of IT actions" . value labels tcomnum 999999 "DK/NA" . *********************************************** . COMMENT TANYACT . numeric tanyact (F1.0) . missing values gactio01 (98,99) . execute . do if (missing(gactio01)=1). + compute tanyact=9. else if (gactio01=11). + compute tanyact=2. else. + compute tanyact=1. end if. missing values tanyact (9). variable labels tanyact 'Any industrial action in the last year?'. value labels tanyact 1 'Yes' 2 'No' 9 'DK/NA'. *********************************************** . COMMENT TSTRIKE . numeric tstrike (f1.0) . recode gactio01 to gactio04 (sysmis=100) . missing values gactio01 to gactio04 () . do if (missing(tanyact)) . + compute tstrike=9 . else if (missing(tanyact)=0 and tanyact=1) . + do if ((gactio01>=1 and gactio01<=3) or (gactio02>=1 and gactio02<=3) or (gactio03>=1 and gactio03<=3) or (gactio04>=1 and gactio04<=3)) . + compute tstrike=1 . + else . + compute tstrike=2 . + end if . else if (missing(tanyact)=0 and tanyact=2) . + compute tstrike=2 . end if . missing values tstrike (9) . variable labels tstrike "Any strike action in last year?" . value labels tstrike 1 "Yes" 2 "No" 9 "DK/NA" . *********************************************** . COMMENT TOTHACT . numeric tothact (f1.0) . do if (missing(tanyact)) . + compute tothact=9 . else if (missing(tanyact)=0 and tanyact=1) . + do if ((gactio01>=4 and gactio01<=10) or (gactio02>=4 and gactio02<=10) or (gactio03>=4 and gactio03<=10) or (gactio04>=4 and gactio04<=10)) . + compute tothact=1 . + else . + compute tothact=2 . + end if . else if (missing(tanyact)=0 and tanyact=2) . + compute tothact=2 . end if . missing values tothact (9) . variable labels tothact "Any non-strike action in last year?" . value labels tothact 1 "Yes" 2 "No" 9 "DK/NA" . *********************************************** . COMMENT TPRPAY . numeric tprpay (f1.0) . recode fvarpay1 to fvarpay5 (sysmis = -9). do if (ttrading=1) . + do if (missing(fvarpay1)=1). + compute tprpay = 9. + else if (fvarpay1 = 1 | fvarpay2 = 1 | fvarpay3 = 1 | fvarpay4 = 1 | fvarpay5 = 1 ). + compute tprpay = 1. + else. + compute tprpay = 2. + end if . end if. execute. missing values tprpay (9). variable labels tprpay 'Any profit repated pay scheme'. value labels tprpay 1 'Yes' 2 'No' 9 'DK/NA'. ***************************************************** . COMMENT TDPROF . numeric tdprof (f1.0) . do if (ttrading=1) . + do if (missing(fvarpay1)=1). + compute tdprof = 9. + else if (fvarpay1 = 2 | fvarpay2 = 2 | fvarpay3 = 2 | fvarpay4 = 2 | fvarpay5 = 2 ). + compute tdprof = 1. + else. + compute tdprof = 2. + end if . end if. execute. missing values tdprof (9) . variable labels tdprof "Any deferred profit sharing scheme" . value labels tdprof 1 'Yes' 2 'No' 9 'DK/NA' . ******************************************* . COMMENT TPROFSH . numeric tprofsh (f1.0) . do if ((missing(tprpay)=0 and tprpay=1) or (missing(tdprof)=0 and tdprof=1)) . + compute tprofsh=1 . else if ((missing(tprpay) and value(tprpay)=9) or (missing(tdprof) and value(tdprof)=9)) . + compute tprofsh=9 . else if ((missing(tprpay)=0 and tprpay=2) and (missing(tdprof)=0 and tdprof=2)) . + compute tprofsh=2 . end if . missing values tprofsh (9) . variable labels tprofsh "Any profit-sharing scheme" . value labels tprofsh 1 'Yes' 2 'No' 9 'DK/NA' . ************************************** . COMMENT TSHOWN. numeric tshown (f1.0) . do if (ttrading=1) . + do if (missing(fvarpay1)=1). + compute tshown = 9. + else if (fvarpay1 = 3 | fvarpay2 = 3 | fvarpay3 = 3 | fvarpay4 = 3 | fvarpay5 = 3 ). + compute tshown = 1. + else. + compute tshown = 2. + end if . end if. execute. missing values tshown (9). variable labels tshown 'Any share ownership scheme'. value labels tshown 1 'Yes' 2 'No' 9 'Dont know / Not answered'. ******************************************** . COMMENT TTEMPLYR . variable labels ttemplyr "Any employees on fixed term contracts in the last 12 months?" . value labels ttemplyr 1 'Yes' 2 'No' . ******************************************** . COMMENT TAGENCY . variable labels tagency "Any agency temps?" . value labels tagency 1 'Yes' 2 'No' . ******************************************** . COMMENT TWRKFREE . recode twrkfree (8=9) . missing values twrkfree (9) . variable labels twrkfree "Any freelancers in last 12 months (98 presently)?" . value labels twrkfree 1 "Yes" 2 "No" 9 "DK/NA" . *********************************************** . COMMENT THANDS . numeric thands (f2.0) . do if (missing(icommtee)) . + compute thands=99 . else if (icommtee=1) . + recode ijoint (8=99) (else=copy) into thands . else if (icommtee=2) . + recode iothrep (1=3) (2=20) (9=99) into thands . end if . do if (icommtee=2 and thands=20) . + do if (iconsul1=4 or iconsul2=4 or iconsul3=4) . + compute thands=11 . + end if . end if . missing values thands (99) . variable labels thands "Arrangements for dealing with health and safety" . value labels thands 1 "Joint committee for H&S" 2 "Joint committee for H&S and other matters" 3 "Workforce reps, no committee" 4 "Management alone (no H&S consultation)" 5 "Management consults with indiv union reps" 6 "Management consults with indiv employees" 7 "Not arisen/no provision" 8 "Organisation (not estab) committee" 9 "Management deals, without consultation" 10 "Management deals, with consultation" 11 "Management-staff meetings/direct consultation" 20 "Other answer" 99 "DK/NA" . *********************************************** . COMMENT TAPPHS . numeric tapphs (f1.0) . compute health=0 . if (dwhich01=9 or dwhich02=9 or dwhich03=9 or dwhich04=9 or dwhich05=9 or dwhich06=9 or dwhich07=9 or dwhich08=9 or dwhich09=9 or dwhich10=9 or dwhich11=9 or dwhich12=9) health=1 . do if (thands=1 and tanymem=1) . + compute tapphs=2 . + do if (missing(irepnum1)) . + compute tapphs=9 . + else if (irepnum1 = 3 | irepnum2 = 3 | irepnum3 = 3 | irepnum4 = 3). + compute tapphs = 1. + end if . else if (thands=2 and tanymem=1) . + compute tapphs=2 . + do if (health=0). + compute tapphs=9 . + else if (health=1 and (dissues=2 or ((dissues=1 or dissues=3) and missing(dappoin1)=1))) . + compute tapphs=9 . + else if (health=1 and (dissues=1 or dissues=3) and (dappoin1=3 or dappoin2=3 or dappoin3=3 or dappoin4=3)) . + compute tapphs=1 . + end if . end if. missing values tapphs (9) . variable labels tapphs "Employee reps on H&S committee chosen by unions/staff assocs" . value labels tapphs 1 "Yes" 2 "No" 9 "DK/NA" . do if serno=14253 . + compute tapphs=9 . end if . missing values tapphs (9) . execute . ************************************************* . COMMENT TINJURY. numeric tinjury (f1.0) . do if (missing(iinjury1)=1). + compute tinjury=9. else if (iinjury1=9). + compute tinjury=2. else. + compute tinjury=1. end if. missing values tinjury (9) . variable labels tinjury "Any specified injuries in last 12 months" . value labels tinjury 1 'Yes' 2 'No' 9 'DK/NA' . execute . ************************************************* . COMMENT TNUMINJ. recode tnuminj (sysmis=0) (else=copy). do if missing(tinjury) . + compute tnuminj=9999 . end if. missing values tnuminj (9999) . variable labels tnuminj "Number of injuries in last 12 months" . value labels tnuminj 9999 'DK/NA' . execute . *********************************************** . COMMENT TREDRE01 to TREDRE10 . numeric tredre01 to tredre10 (f1.0) . do if missing(treduct)=0 and treduct=1 . + do if missing(jredrea1) . + recode tredre01 to tredre10 (sysmis=9) . + else if missing(jredrea1)=0 . + compute tredre01=any(1,jredrea1 to jredrea5) . + compute tredre02=any(2,jredrea1 to jredrea5) . + compute tredre03=any(3,jredrea1 to jredrea5) . + compute tredre04=any(4,jredrea1 to jredrea5) . + compute tredre05=any(5,jredrea1 to jredrea5) . + compute tredre06=any(6,jredrea1 to jredrea5) . + compute tredre07=any(7,jredrea1 to jredrea5) . + compute tredre08=any(9,jredrea1 to jredrea5) . + compute tredre09=any(10,jredrea1 to jredrea5) . + compute tredre10=any(11,jredrea1 to jredrea5) . + end if . end if . recode tredre01 to tredre10 (0=2) . variable labels tredre01 "Reduction due to lack of demand for products/services" /tredre02 "Reduction due to shortage of materials" /tredre03 "Reduction due to automation" /tredre04 "Reduction due to reorganization of work" /tredre05 "Reduction due to improved efficiency" /tredre06 "Reduction due to industrial disputes" /tredre07 "Reduction due to budget reductions" /tredre08 "Reduction due to subcontracting of work" /tredre09 "Reduction due to impending closure" /tredre10 "Reduction due to staff shortages". value labels tredre01 tredre02 tredre03 tredre04 tredre05 tredre06 tredre07 tredre08 tredre09 tredre10 1 "Yes" 2 "No" 9 "DK/NA" . missing values tredre01 tredre02 tredre03 tredre04 tredre05 tredre06 tredre07 tredre08 tredre09 tredre10 (9) . execute. *********************************************** . COMMENT TREDMET1 to TREDMET4 . numeric tredmet1 to tredmet4 (f1.0) . do if missing(treduct)=0 and treduct=1 . + do if missing(jredmet1) . + recode tredmet1 to tredmet4 (sysmis=9) . + else if missing(jredmet1)=0 . + compute tredmet1=any(1,jredmet1 to jredmet4) . + compute tredmet2=any(2,jredmet1 to jredmet4) . + compute tredmet3=any(3,jredmet1 to jredmet4) . + compute tredmet4=any(4,jredmet1 to jredmet4) . + end if . end if . recode tredmet1 to tredmet4 (0=2) . variable labels tredmet1 "Reduction through natural wastage" /tredmet2 "Reduction through redeployment" /tredmet3 "Reduction through early retirement/voluntary redundancies" /tredmet4 "Reduction through compulsory redundancies" . value labels tredmet1 tredmet2 tredmet3 tredmet4 1 "Yes" 2 "No" 9 "DK/NA" . missing values tredmet1 tredmet2 tredmet3 tredmet4 (9) . execute. *********************************************** . COMMENT TNONEM1 to TNONEM7 . numeric tnonem1 to tnonem7 (f1.0) . do if missing(jnonem01) . + recode tnonem1 to tnonem7 (sysmis=9) . else if missing(jnonem01)=0 . + compute tnonem1=any(1,jnonem01 to jnonem11) . + compute tnonem2=any(2,jnonem01 to jnonem11) . + compute tnonem3=any(3,jnonem01 to jnonem11) . + compute tnonem4=any(4,jnonem01 to jnonem11) . + compute tnonem5=any(5,jnonem01 to jnonem11) . + compute tnonem6=any(6,jnonem01 to jnonem11) . + compute tnonem7=any(7,jnonem01 to jnonem11) . end if . recode tnonem1 to tnonem7 (0=2) . missing values tnonem1 to tnonem7 (9) . variable labels tnonem1 "Sub-contracts cleaning" /tnonem2 "Sub-contracts security" /tnonem3 "Sub-contracts catering" /tnonem4 "Sub-contracts building maintenance" /tnonem5 "Sub-contracts printing/photocopying" /tnonem6 "Sub-contracts payroll" /tnonem7 "Sub-contracts transport of documents/goods" . value labels tnonem1 tnonem2 tnonem3 tnonem4 tnonem5 tnonem6 tnonem7 1 "Yes" 2 "No" 9 "DK/NA" . *********************************************** . COMMENT TSHIFT . numeric tshift (f1.0) . do if missing((jtimear1) = 1). + compute tshift = 9. else if missing(jtimear1)=0 and any(4,jtimear1,jtimear2,jtimear3,jtimear4,jtimear5,jtimear6). + compute tshift = 1. else if missing(jtimear1)=0 and any(4,jtimear1,jtimear2,jtimear3,jtimear4,jtimear5,jtimear6)=0 . + compute tshift = 2. end if. variable labels tshift "Any shift working?". value labels tshift 1 "Yes" 2 "No" 9 "DK/NA" . missing values tshift (9) . *********************************************** . COMMENT TANYREC . numeric tanyrec (F1.0) . recode zcommwor (0=2) (lowest thru 9996 = 1) (missing=9) into tanyrec . missing values tanyrec (9) . variable labels tanyrec "Recruited any new permanent staff in last 12 months?" . value labels tanyrec 1 "Yes" 2 "No" 9 "DK/NA" . *********************************************** . COMMENT TPROSER . do if (ttrading=1) . + recode tproser (8=9) (sysmis=99) . else if (ttrading=2) . + recode tproser (else=sysmis) . end if . missing values tproser (9,99) . variable labels tproser "Single product/service or more than one?" . value labels tproser 1 "Single" 2 "More than one" 9 "DK/NA" 99 "Not asked" . *********************************************** . COMMENT TVALSAL . do if (ttrading=1) . + recode tvalsal (sysmis=7) . else if (ttrading=2) . + recode tvalsal (else=sysmis) . end if . missing values tvalsal (7 thru 9) . variable labels tvalsal "Trend in the value of sales over the past year" . value labels tvalsal 1 "Rising" 2 "Falling" 3 "Stable" 4 "Other" 7 "Not asked" 8 "DK" 9 "NA" . *********************************************** . COMMENT TCOLLEC1-TCOLLEC6 . numeric tcollec1 tcollec2 tcollec3 tcollec4 tcollec5 tcollec6 (f1.0) . do if (missing(krecper1) = 1). + compute tcollec1 = 9. else if (krecper1 = 4 | krecper2 = 4 | krecper3 = 4 | krecper4 = 4 | krecper5 = 4 | krecper6 = 4 | krecper7 = 4 | krecper8 = 4 | krecper9 = 4 ). + compute tcollec1 = 1. end if. execute. recode tcollec1 (sysmis = 2). execute. do if (missing(krecper1) = 1). + compute tcollec2 = 9. else if (krecper1 = 5 | krecper2 = 5 | krecper3 = 5 | krecper4 = 5 | krecper5 = 5 | krecper6 = 5 | krecper7 = 5 | krecper8 = 5 | krecper9 = 5 ). + compute tcollec2 = 1. end if. execute. recode tcollec2 (sysmis = 2). execute. do if (missing(krecper1) = 1). + compute tcollec3 = 9. else if (krecper1 = 8 | krecper2 = 8 | krecper3 = 8 | krecper4 = 8 | krecper4= 8 | krecper4 = 8 | krecper4 = 8 | krecper4 = 8 | krecper9 = 8 ). + compute tcollec3 = 1. end if. execute. recode tcollec3 (sysmis = 2). execute. do if (missing(krecper1) = 1). + compute tcollec4 = 9. else if (krecper1 = 9 | krecper2 = 9 | krecper3 = 9 | krecper4 = 9 | krecper5 = 9 | krecper6 = 9 | krecper7 = 9 | krecper8 = 9 | krecper9 = 9 ). + compute tcollec4 = 1. end if. execute. recode tcollec4 (sysmis = 2). execute. compute tcollec5 = 2. execute. do if (missing(ipracti1)=1). recode tcollec5 (2 = 9). else if (ipracti1 = 2 | ipracti2 = 2 | ipracti3 = 2 | ipracti4 = 2 | ipracti5 = 2 | ipracti6 = 2 ). recode tcollec5 (2=1). end if. execute. compute tcollec6 = 2. execute. do if (missing(ipracti1)=1). recode tcollec6 (2 = 9). else if (ipracti1 = 1 | ipracti2 = 1 | ipracti3 = 1 | ipracti4 = 1 | ipracti5 = 1 | ipracti6 = 1 ). recode tcollec6 (2=1). end if. execute. missing values tcollec1 tcollec2 tcollec3 tcollec4 tcollec5 tcollec6 (9) . variable labels tcollec1 'Collect information on labour costs' tcollec2 'Collect information on productivity' tcollec3 'Collect information on absenteeism' tcollec4 'Collect information on workforce training' tcollec5 'Collect information on gender mix of workforce' tcollec6 'Collect information on ethnic mix of workforce'. value labels tcollec1 tcollec2 tcollec3 tcollec4 tcollec5 tcollec6 1 "Yes" 2 "No" 9 "DK/NA" . *********************************************** . COMMENT TSTATIR . recode tstatir (8=9) . missing values tstatir (9) . variable labels tstatir "State of management-employee relations" . value labels tstatir 1 "Very good" 2 "Good" 3 "Neither good nor bad" 4 "Poor" 5 "Very poor" 9 "DK/NA" . *********************************************** . COMMENT TESTPER1 . do if (ttrading=2) . + recode testper1 (else=sysmis) . else if (ttrading=1) . + recode testper1 (8=9) . end if . missing values testper1 (6 thru 9) . variable labels testper1 "Financial performance cf other estabs in industry" . value labels testper1 1 "Lot better than average" 2 "Little better than average" 3 "About average for the industry" 4 "Little below average" 5 "Lot below average" 6 "No comparison possible" 7 "Relevant data not available" 8 "Missed on route" 9 "DK/NA" . *********************************************** . COMMENT TESTPER2 . do if (ttrading=2) . + recode testper2 (else=sysmis) . else if (ttrading=1) . + recode testper2 (8=9) . end if . missing values testper2 (6 thru 9) . variable labels testper2 "Labour productivity cf other similar estabs" . value labels testper2 1 "Lot better than average" 2 "Little better than average" 3 "About average" 4 "Little below average" 5 "Lot below average" 6 "No comparison possible" 7 "Relevant data not available" 8 "Missed on route" 9 "DK/NA" . *********************************************** . COMMENT TLABCOST . recode tlabcost (8=9) . missing values tlabcost (8,9) . variable labels tlabcost "Labour cost ratio" . value labels tlabcost 1 "Less than 25%" 2 "25-49%" 3 "50-74%" 4 "75%+" 8 "Missed on route" 9 "DK/NA" . *********************************************** . COMMENT TSELLS, TLARGE, TMARKET and TCOMPET . numeric tsells tlarge tmarket tcompet (f1.0) . do if (ttrading=1 and (tsingle=1 or tho=3)) . + recode kactivi (1,2=1) (else=2) into tsells . end if . do if (tsells=1) . + recode klarge kmarket kcompet (8,sysmis=9) (else=copy) into tlarge tmarket tcompet . end if . execute . missing values tsells tlarge tmarket tcompet (9) . variable labels tsells "Sells goods/services outside organisation" /tlarge "Percentage of output going to largest customer" /tmarket "Proximity of market for goods/services" /tcompet "Number of competitors for (main) product/service" . value labels tsells 1 "Yes" 2 "No" 9 "DK/NA" /tlarge 1 "Less than 5%" 2 "5-10%" 3 "11-25%" 4 "26-50%" 5 "More than 50%" 9 "DK/NA" /tmarket 1 "Primarily local" 2 "... regional" 3 "... national" 4 "... international" 9 "DK/NA" /tcompet 1 "None/dominates market" 2 "A few (up to 5)" 3 "Many (6+) " 9 "DK/NA" . *********************************************** . COMMENT TLOCATE numeric tlocate (f1.0) . recode mqloc (1=1) (else=2) into tlocate. variable labels tlocate 'interviewed at the establishment'. value labels tlocate 1 'Yes' 2 'No'. **************************************** . COMMENT Scale weight to 2000 . compute weight=(est_wt*(2000/1096)) . variable labels weight "Establishment weight" . execute . **************************************************** . COMMENT Compute new serno, placing "98" at front of a 5-digit serial number . FORMATS serno (f7.0) . COMPUTE serno=9800000+serno . execute . *********************************************** . COMMENT Save the data . SORT CASES BY serno . select if tallemps>=25 . SAVE OUTFILE = "o:\wers98\longit\deposit\dat98ts.sav" /keep=serno year tallemps temp1ago temp5ago tallfem tftmale tftfem tallft tallpt tallnm tempc5 tmgrfpc tanymem tnummema tudensa tsic92 tsic80b tmanuf tsingle testnum torgsize tstatus tsect15 ttrading tukfo tho tmultnat tage ttimhere ttimher7 taddress tprev tsex ttitle tspecial tyourj01 tyourj02 tyourj03 tyourj04 tyourj05 tmanage tertime tertimea tlength tlengthb tservice tservicb thavqual tassist tsepar tboard teass tadvice1 tadvice2 tadvice3 tadvice4 tconsall tcircles tbrief tchain tsuggest tnews tinvplan tfinance torgfin tstaffin tinfo tjcc tjccfreq tjcctu tjcchi tjccnum tjccinf tuninum ttotrec trecog tclshop tpreent tcheckof turep turepnum tfturep textrep tothreps tothrep2 tprocgrv traised tprocdis tdisnum twarning tsuspend tdeduct tsancnum tngroup1 tngroup2 tallcov tcovpc tcovpc7 tcovpc6 tcovpc3 tnatbarg torgbarg testbarg textset torgset testset tpaydet tcomplai tcomnum tanyact tstrike tothact tpicket tprpay tdprof tprofsh tshown ttemplyr tagency twrkfree thands tapphs tinjury tnuminj treduct tredre01 tredre02 tredre03 tredre04 tredre05 tredre06 tredre07 tredre08 tredre09 tredre10 tredmet1 to tredmet4 tshift tnonem1 tnonem2 tnonem3 tnonem4 tnonem5 tnonem6 tnonem7 tanyrec tproser tvalsal tcollec1 tcollec2 tcollec3 tcollec4 tcollec5 tcollec6 tstatir testper1 testper2 tlabcost tsells tlarge tmarket tcompet tlocate weight . execute .