Science Faculty IT Hardware Lease Refresh – Reconciliation Spreadsheet Summary 1 Contents Document Control ........................................................................................................................ 3 Version History ............................................................................................................................. 3 Audience.......................................................................................................................................... 3 MASTER Tab ................................................................................................................................... 4 Column A - ‘CEA mismatch’ ................................................................................................................. 4 Column B – Serial in KAOS? ................................................................................................................ 4 Column C – KAOS Status ....................................................................................................................... 4 Column D – CEA No ................................................................................................................................ 4 Column E – Tag No.................................................................................................................................. 4 Column H – Orig. Purchase Price ...................................................................................................... 5 Column I – Comp_Other (Hidden) .................................................................................................... 5 Column K – HDD ...................................................................................................................................... 5 Column L – RAM ...................................................................................................................................... 5 Column N – CEA Created By................................................................................................................ 5 Column O – CEA Ordered For ............................................................................................................. 6 Column R – Most Frequent User ....................................................................................................... 6 Column S – Contact Name.................................................................................................................... 6 Column T – ContactEmail .................................................................................................................... 6 Column Y – Proposed Replacement................................................................................................. 6 Column AA – Price Diff w/ standard ............................................................................................... 7 Column AG – Response Date............................................................................................................... 7 Conditional Formatting ........................................................................................................................ 7 Working Tab .................................................................................................................................. 9 KEY ................................................................................................................................................................ 9 Status............................................................................................................................................................ 9 Base Models + Price ............................................................................................................................... 9 Name Details ............................................................................................................................................. 9 AttractiveAssets Tab .................................................................................................................10 Column BR – CEA:Department ....................................................................................................... 10 Hardware Tab .............................................................................................................................11 Column A – Tag ..................................................................................................................................... 11 Column B - HDD .................................................................................................................................... 11 Column D - Model................................................................................................................................. 11 User Tab ........................................................................................................................................12 KAOS Working Tab ....................................................................................................................12 Colum A – Serial .................................................................................................................................... 12 OCM Working Tab ......................................................................................................................12 Column A – CEA No ............................................................................................................................. 12 Column D – Asset Detail ID .............................................................................................................. 12 Column G – Comp_Other ................................................................................................................... 13 Green Tabs – ‘Raw’ data ...........................................................................................................13 2 Document Control Title Author Person Responsible Date Last Updated Status Location Science Faculty IT Hardware Lease Reconciliation Spreadsheet Summary Ryan Miller Chris Bromley 12/08/2015 Released http://kb.sit.auckland.ac.nz/?article=lease-refresh-process Version History Date 13/08/2015 Version 0.1 Author Ryan Miller Brief Description First draft presented for review Audience This document is available for general consumption. It is intended to summarise the logic and intention behind the formulae in ‘Lease_reconciliation_MASTER.xlsx’ so as to make for easy update or recovery as required. Each formula summarized is treated as being in the first row (2). Unless otherwise stated, these formulas ‘drag down’ to also work for all other rows in that same column, with the row number updating accordingly (e.g. D2, D3, D4 etc). Formulae that are similar to previously explained examples (except for cell references) have been omitted. 3 MASTER Tab The section of the spreadsheet that reconciles data from all of the different sources, and produces a final output about what we need to return/replace. Column A - ‘CEA mismatch’ =IFERROR(IF(VLOOKUP(D2,KAOS_working!BO:BO,1,FALSE)=D2,""),"CEA not on this lease in KAOS") Look up the CEA number (D2) that OCM is reporting has an asset due back on lease, against what we think is due back based on KAOS data (KAOS_working!BO:BO). If it exists, just fill the cell blank (“”), otherwise report an error, as we need to check why the leasing company are expecting equipment back on a CEA that we (likely) have against a different lease. Column B – Serial in KAOS? =IF(AND(I2="Computer",IFERROR(VLOOKUP(CLEAN(TRIM(F2)),KAOS_working!A:A,1,FALSE)," x")="x"),"Computer serial not in KAOS","") If the item is a “Computer” (I2), remove the whitespace and look up the serial number that OCM has reported is due back (F2), against what we think is due back in KAOS (KAOS_working!A:A). If it exists, just fill the cell blank (“”), otherwise report an error, as we need to check why (often just a typo, but need to confirm so that we can be sure we have all available details when attempting to track down assets to return). Column C – KAOS Status =IF(OR(E2<>"",F2<>""),IFERROR(VLOOKUP(CLEAN(TRIM(F2)),KAOS_working!A:EZ,36,FALSE),I FERROR(VLOOKUP(CLEAN(TRIM(E2)),KAOS_working!B:EZ,35,FALSE),"")),"") If both the asset tag (E2) and serial (F2) are blank, do nothing (as there is nothing to search against in KAOS). If either are present, look up the serial number (F2) that OCM is reporting against the KAOS data (KAOS_working!A:EZ). If it is present, return the corresponding ‘KAOS Status’ (36 columns along). If it is not present, do the same against the Tag No (E2). If it can’t find either, just return a blank cell (“”). Column D – CEA No =IF('OCM working'!A2="z","",'OCM working'!A2) If the corresponding field in ‘OCM_working’ contains ‘z’ (a placeholder for no entry, explained later), then return a blank cell. Otherwise it contains a valid CEA number, so display it. Column E – Tag No ='OCM working'!B2 Display the Tag No from OCM. If it’s blank, then this will just be displayed so no impact. 4 Column H – Orig. Purchase Price ='OCM working'!H2 Display the Purchase Price from OCM. If it’s blank, then this will just be displayed so no impact. Haiying has requested this be displayed as it helps her when determining whether previous model ordered was ‘standard’ or not. Column I – Comp_Other (Hidden) ='OCM working'!G2 Display whether the asset is a ‘computer’ or other type of asset from OCM. If it’s blank, then this will just be displayed so no impact. This field is hidden as not intended to help to inform decisions, rather can be used for sorting if need to a ‘deep dive’ of the data at any point. Column K – HDD =IF(OR(E2<>"",F2<>""),IFERROR(VLOOKUP(TRIM(CLEAN(F2)),Hardware!B:C,2,FALSE),IFERRO R(VLOOKUP(TRIM(CLEAN(E2)),Hardware!A:C,3,FALSE),"")),"") If both the asset tag and serial are blank, do nothing (as there is nothing to search against in KAOS). If either are present, look up the serial number that OCM is reporting against the Hardware data from KAOS (‘Hardware!B:C’). If it is present, return the corresponding HD size (2 columns along). If it is not present, do the same against the Tag No. If it can’t find either, just return a blank cell. Column L – RAM =IF(OR(E2<>"",F2<>""),IFERROR(CEILING(VLOOKUP(CLEAN(TRIM(F2)),KAOS_working!A:EZ,14 3,FALSE)/1024/1024,4)& " GB",IFERROR(CEILING(VLOOKUP(CLEAN(TRIM(E2)),KAOS_working!B:EZ,142,FALSE)/1024/10 24,4) & " GB","")),"") If both the asset tag and serial are blank, do nothing (as there is nothing to search against in KAOS). If either are present, look up the serial number that OCM is reporting against the KAOS data (‘KAOS_working!A:EZ’). If it is present, return the corresponding RAM (143 columns along), convert it from KB to GB (/1024/1024) and add text “ GB” so that it formats properly in the mail merge. If it is not present, do the same against the Tag No. If it can’t find either, just return a blank cell. Column N – CEA Created By =IF(OR(E2<>"",F2<>""),IFERROR(VLOOKUP(CLEAN(TRIM(F2)),KAOS_working!A:EZ,69,FALSE),I FERROR(VLOOKUP(CLEAN(TRIM(E2)),KAOS_working!B:EZ,68,FALSE),"")),"") If both the asset tag and serial are blank, do nothing (as there is nothing to search against in KAOS). If either are present, look up the serial number that OCM is reporting against the 5 KAOS data (‘KAOS_working!A:EZ’). If it is present, return whoever created the CEA (69 columns along). If it is not present, do the same against the Tag No. If it can’t find either, just return a blank cell. This data is included as it may help find a primary contact if there is not one listed. Column O – CEA Ordered For Also included as it may help find a primary contact if there is not one listed. Column R – Most Frequent User =IF(F2="","",IFERROR(VLOOKUP(CLEAN(TRIM(F2)),Users!A:B,2,FALSE),"")) If the serial (F2) is blank, just return a blank in this cell, else look up the serial against KeyServer data (‘Users!A:B’) and return the first instance of a username. The data in the ‘Users’ tab has been sorted by total login time, so the first instance of a username for each computer is the most frequent user of that computer. Column S – Contact Name =IFERROR(VLOOKUP(Q2,Working!A:B,2,FALSE),IFERROR(VLOOKUP(R2,Working!A:B,2,FALSE), "")) Look up the upi in the Custodian field (Q2) against user data (Working!A:B). If it is found, return the full Contact Name (2 columns along), else Custodian must be blank so look up the Most Frequent User (R2) and return the full Contact Name. If neither are found, just return a blank cell. This is shown so the data is easier for Department Management to process. Column T – ContactEmail =IFERROR(IF(VLOOKUP(C2,Working!$A$9:$A$13,1,FALSE)=C2,""),IF(AB2="Replacement already underway","",IF(F2="","", IF(Q2<>"",Q2&"@uoa.auckland.ac.nz", IF(R2<>"",R2&"@uoa.auckland.ac.nz",""))))) If the status of the item (C2) is not ‘Leased’ (i.e. in ‘Working!$A$8:$A$12’), or the value in AB2 is “Replacement already underway” just return a blank cell. (We only want to send emails to users who currently have leased assets). Else, if the serial is blank (then the implication is the whole row is blank), also return a blank cell. Else, if the computer has a Custodian (Q2), append the UoA email suffix to the upi (as first priority for primary contact). Else if there is no Custodian, if the computer has a Most Frequent User (R2), do the same (as second priority). Column Y – Proposed Replacement Drop-down listing the current ‘standard’ models and config that the University supplies. Source is from the ‘Working’ tab. 6 These can be selected and then updated if required (e.g. upgrade CPU from i5 to i7). Or, if model not listed (i.e. exception request), then these can be manually entered in). Column AA – Price Diff w/ standard =IF(Z2="","",IFERROR(FLOOR(Z2VLOOKUP(LEFT(Y2,21)&"*",Working!C$8:D$22,2,FALSE),10),"")) Look up the first 21 characters of the ‘Proposed Replacement’ (Y2) in the list of standard models (Working!C$8:D$22), if it is found subtract the corresponding standard price from the quoted price (to the nearest $10). Helps Department Management make an educated purchasing decision based on budgets. Column AE – Response Date =IF(COUNTIF(C3:G3,"")=5,"",$AG$2) If there is no data in the first 5 columns, return nothing. Else, fill the cell with what has been manually entered in cell AG2. Required for mail merge, lets users know when they need to respond by (and should be the same for all items), so just requires a single manual entry. Conditional Formatting Colours rows/cells for easy reading depending on the data. 7 No Replacement Required - Highlight Rows Grey =OR(NOT(ISERROR(VLOOKUP($C2,$AE$2005:$AE$2009,1,FALSE))),$AB2="Return without replacing",$AB2="Extend lease") Check whether the item’s status is one of: Written Off, Stolen, Ready for Return, Lease Return, Owned ($AJ$2005:$AJ$2009 – small table at the bottom of the spreadsheet) OR the ‘Result’ field = either “Return without replacing” or “Lease extend” (i.e. the status indicates that no replacement needs to be ordered, or the user has responded to our email to advise no replacement is required). If so, highlight the row grey. Replacement Already Underway – Highlight Rows Blue =$AB2="Replacement already underway" Check whether the ‘Result’ field = “Replacement already underway” (i.e. identified that the replacement for this item is already underway, so there is no need to take action within the refresh process). If so, highlight the row blue. Missing CPU Information – Highlight Field Red =AND(SEARCH("Computer",$I2),$J2="") If the CPU field is blank AND the item is a computer, highlight the field red. Missing Hard Drive Information – Highlight Field Red =AND(SEARCH("Computer",$I2),$K2="") If the HDD field is blank AND the item is a computer, highlight the field red. Missing RAM Information – Highlight Field Red =AND(SEARCH("Computer",$I2),$L2="") If the RAM field is blank AND the item is a computer, highlight the field red. Missing Graphics Card Information – Highlight Field Red =AND(SEARCH("Computer",$I2),$M2="") If the Graphics Card field is blank AND the item is a computer, highlight the field red. No Response - Highlight Rows Green =$AB2="No response" Check whether the ‘Result’ field = “No response” (i.e. we’ve sent out an email to the user and they haven’t responded). If so, highlight the row green. Exception Request - Highlight Rows Pink =$AB2="Replace (exception request)" 8 Check whether the ‘ExceptionRequest’ field = "Replace (exception request)" (i.e. the user has responded to our email to advise that our proposed replacement isn’t suitable, and they’d like to speak to someone about their requirements). If so, highlight the row pink. Working Tab This section of the spreadsheet doesn’t contain any formulas, rather information that contributes to the ‘MASTER’ tab. KEY Helps Department Management interpret the spreadsheet information when they receive it, without having to reference other documents/emails. This can’t be in the ‘MASTER’ tab by default as it would break the mail merge. So it needs to be copy/pasted across immediately prior to sending to Department Management (at which point any mail merges are complete). Status Contributes to the formula for email address in Column T in the ‘MASTER’ tab. Base Models + Price Based Models are the source for the drop-down for ‘Proposed Replacement’ (Column Y) in the ‘MASTER’ tab. Price is the contributes to the ‘Price Diff w/ standard’ column (Column AA) in the ‘MASTER’ tab. This value is subtracted from the actual price of the quoted item (Column Z) to give the difference in price from the standard model. Name Details Details are copy/pasted from the UoA Multi User Search Tool: https://www.sit.auckland.ac.nz/sso/protected/support_tools/uoaMUSearch.php (found on the Matrix: https://www.sit.auckland.ac.nz/sso/protected/) as part of the lease process. These results are then looked up against the ‘Custodian’ column (Column Q), then the ‘Most Frequent User’ (Column R) in the ‘MASTER’ tab, and results output in the ‘Contact Name’ column (Column S). 9 AttractiveAssets Tab This tab processes the raw data from the Attractive Assets report that we get out of KAOS, clears out the surplus data, and reorders it so that it can be consolidated with the rest of the KAOS data, and processed by the ‘MASTER’ tab. Headers are from the KAOS output. Columns coloured grey are where the information doesn’t exist, or isn’t necessary, in the Attractive Asset data. In general, the formulas take the form: =IF('AttracAssets Raw'!AI2="","",'AttracAssets Raw'!AI2) i.e. If the equivalent field in the Attractive Asset data is blank, just return a blank, else return the data. The only variation is: Column BR – CEA:Department =IF(BO2="","",IF(VLOOKUP(BO2,'KAOS Raw'!BO:BZ,4,FALSE)="","",VLOOKUP(BO2,'KAOS Raw'!BO:BZ,4,FALSE))) If the CEA number for that Attractive Asset is blank, just return a blank for the department field. (Unlikely, but handles that error condition). Otherwise, look up the CEA number against the KAOS data, and return the corresponding Department. As there is a 1:1 relationship between CEA and Department, the CEANo acts as the primary key between the two. 10 Hardware Tab This tab processes only the data we need from the raw data from the Hardware report that we get out of KAOS, and reorders it so that it can be consolidated with the rest of the KAOS data, and processed by the ‘MASTER’ tab. Column A – Tag =IF('Hardware Raw'!A2="","","UOA"&'Hardware Raw'!A2) Same as previous formulas, and prefixes ‘UOA’ to the start of the asset tag. This means that it can be looked up against the tags that are returned from the leasing company (that comes in the form UOAXXXXXX). Column B - HDD =IF('Hardware Raw'!Q2="","",IF(SUMPRODUCT(COUNTIF(D2,"*"&$F$2:$F$4&"*"))>0,CEILING('Hardware Raw'!G2/1000,1)&"GB SSD",CEILING('Hardware Raw'!G2/1000,10)&"GB HDD")) We receive hard drive sizes in KB, with no reference to SDD v. HDD. We need some way of processing this so that the user can clearly see what (we think) they currently have. SSD drives generally come in the size 128GB, 256GB and 512GB (1TB drives are considered an anomaly and not considered for this), these are listed in column F. So….. We take a look at the disk model number. If it contains any of these number combinations (as SSD disk models often do) then we assume it is an SSD, and divide the figure by 1000 (to get it in GB), round to the nearest GB, and append “ SSD” to the end. If the disk model number doesn’t contain these number combinations, we assume it is a regular SATA hard drive, so divide the figure by 1000, round to the nearest 10GB, and append “ HDD” to the end. Column D - Model =IFERROR(VLOOKUP(TRIM($B2),'User Raw'!P:Y,5,FALSE),"") Look up the serial in the ‘User Raw’ tab (output from KAOS, and return the disk model if it is found. 11 User Tab Used purely to reorder the data so that it can be properly processed by the ‘Master’ tab. (VLOOKUPs rely on the lookup range being in the ‘first’ column, so we can’t just use the raw data directly. KAOS Working Tab This tab processes the raw data we get from KAOS, and puts it in and order and form that can be consumed by the ‘MASTER’ tab. Colum A – Serial =IF('KAOS Raw'!AH2="","-",CLEAN(TRIM('KAOS Raw'!AH2))) If the equivalent field in the ‘KAOS Raw’ tab is blank, return a hyphen. If not, return the data. We use a hyphen instead of a blank field here so the data can be sorted properly. (If we just left it blank then when we sorted the data by serial, all the blanks would be at the top…not ideal). OCM Working Tab This tab processes the raw data we get from OCM, and puts it in and order and form that can be consumed by the ‘MASTER’ tab. Column A – CEA No =IF('OCM Raw'!AC2="","z",'OCM Raw'!AC2) If the equivalent field in the ‘OCM Raw’ tab is blank, return a “z”. If not, return the data. As above, we use a “z” instead of a blank field here so the data can be sorted properly. (If we just left it blank then when we sorted the data by CEA No, all the blanks would be at the top…not ideal). Column D – Asset Detail ID =IF(OR(C2<>"",B2<>""),IFERROR(VLOOKUP(CLEAN(TRIM(C2)),KAOS_working!A:D,4,FALSE),IF ERROR(VLOOKUP(CLEAN(TRIM(B2)),KAOS_working!B:D,3,FALSE),"")),"") 12 Look up the serial against KAOS, and if it exists return the Asset Detail ID. If the serial doesn’t exist, look up the asset tag number and do the same thing. If neither exist, just return a blank. This field is used for sorting the data. Column G – Comp_Other =IF(ISNUMBER(SEARCH("top",'OCM Raw'!G2)),"Computer",IF(ISNUMBER(SEARCH("Workstation",'OCM Raw'!G2)),"Computer",IF(ISNUMBER(SEARCH("Server",'OCM Raw'!G2)),"Computer",IF('OCM Raw'!G2="","","Other")))) Look up the asset type in the OCM spreadsheet. If it is a Desktop, Laptop, Workstation or Server, classify it as a ‘Computer’. Otherwise classify it as ‘Other’ (e.g. monitor, accessories etc). Green Tabs – ‘Raw’ data Used to dump data into from the various data sources (KAOS, OCM, KeyServer) for processing by other tabs. No formulas are applied here. 13