New PC Build!!!
Stay tuned for an in-depth article on my latest build, complete with photos of all my phases! Here’s a hint:
Stay tuned for an in-depth article on my latest build, complete with photos of all my phases! Here’s a hint:
Get your wallets ready folks! The enthusiast (or extreme depending on how you look at it) chips are on their way for Q4 this year! That means newer, faster, more overclockable chips for a better dream machine! Couple one of these with the new Corsair H100 and you’ve got speed! Read here for full details!
Every once in a while a piece of technology comes along that makes me think “I wish I had thought of that”. This is definitely one of them. Essentially it is a USB key that you can put ISO’s on to and then the OS will see it as an actual CD drive. Nifty if you carry around your Linux or Windows ISO’s for quick repairs! Check out the links below:
Well, Maximum PC’s annual dream machine is here. For those of you who are unaware, this is the tech journals ode to the creme de la creme of enthusiast PC computing parts. Every year they manage to wow readers with their outlandish and extreme builds, however this year I was less than impressed.
To my understanding, the Dream Machine has always been over-powered and awesome! It represented the best PC a consumer could build (if they had an unlimited budget), but this year was anything but that. Don’t get me wrong, the build quality was still amazing, but why dull it down with parts that will be obsolete in a month or two?
With Intel’s enthusiast chips around the corner and Nvidia & AMD’s newest offerings on the horizon it seemed like a bad time to do the build. I read their argument on the subject, but I still think they should have waited. The only thing cutting-edge and extreme about it was the case (Coolermaster Cosmos 2) which won’t be available for another month, which to me, was a wash because they didn’t even review the case’s features. Maybe I need to read the magazine article to get the full review, but that would seem silly if you ask me.
With regret I say that I am disappointed, but hey, there is always next year!
Sick of being dinged with bad satisfaction surveys when it wasn’t your fault? Are you a worker with report access? Follow these simple steps to correct the problem!:
1. Open http://youraltirissite/Altiris
2. Click the “Reports” Tab
3. Create a new report by right clicking in the navigation pane and choosing “new > report”
4. Under “Report type” select “Enter SQL Directly”
5. Enter in the following SQL:
UPDATE dbo.Altiris_Incidents.workitem
SET comment =
‘A satisfaction survey was processed.
Overall experience:
5
Responsiveness:
5
Technical expertise:
5
Information provided:
5
Professionalism and courtesy:
5′
WHERE number = ’12345′
AND comment LIKE ‘A satisfaction survey was processed.%’
6. Set number to whatever the workitem ticket # is in Altiris
7. Set your numbers as needed (I have them set to all 5′s)
8. Click “test” to run the query.
9. Click “cancel” to close the new report without saving.
Presto! You are all done and your satisfaction survey no longer sucks!
While working in Altiris help desk today I realized how incredibly cumbersome it is to try and figure out what queues my fellow employees were a part of. Being part of a rather large organization makes it rather difficult to route tickets to the appropriate place.
As a result I wrote this PHP script (tested in 5.3) to list out all queues and their workers. It is in a 4 column display and it calculates out the height of each column to match without breaking a queue apart.
Important to note that this just active workers and queues. You can adjust the SQL queries to display all if you wish.
<?php
// connect to "Altiris_incidents" using ODBC and an included file that has connection variables
include("../altiris_login.gsf");
$myConnection = odbc_connect("Driver={SQL Server};Server=".$myServer.";Database=Altiris_Incidents;",$myUser,$myPass);
// get groups
$groupQuery = odbc_exec($myConnection,"SELECT id,name FROM worker WHERE is_virtual = '1' AND name LIKE '#%' ORDER BY name ASC") or end;
if ($groupQuery && odbc_num_rows($groupQuery)>0) {
// do this for each group
while ($groupRow = odbc_fetch_array($groupQuery)) {
// get workers
$workerQuery = odbc_exec($myConnection,"SELECT name FROM worker WHERE queue_id = '".$groupRow["id"]."' AND status = 'a' ORDER BY name ASC") or end;
if ($workerQuery && odbc_num_rows($workerQuery)>0) {
// loop for each worker
while ($workerRow = odbc_fetch_array($workerQuery)) {
if (!$workerArr)
$workerArr = array(array($groupRow["name"],$workerRow["name"]));
else
array_push($workerArr,array($groupRow["name"],$workerRow["name"]));
}
}
// separate array for counting groups
if (!$groupArr)
$groupArr = array($groupRow["name"]);
else
array_push($groupArr,$groupRow["name"]);
}
}
// start display of table
?>
<table>
<tr>
<td style='vertical-align:top;'>
<?php
// check for arrays before starting
if ($workerArr && $groupArr) {
// null counts and set column size
$rowCount = 0;
$columnCount = 0;
$columnSize = round((sizeof($groupArr)+sizeof($workerArr)) / 4);
// loop for each
foreach ($workerArr as $worker) {
// set vars
$workerQueue = $worker[0];
$workerName = $worker[1];
// add extra to count for queue names
if ($displayQueue!=$workerQueue)
$rowCount = $rowCount + 2;
else
$rowCount++;
// split column
if ($rowCount>=$columnSize && $displayQueue!=$workerQueue && $columnCount<5) {
$rowCount = 1;
$columnCount++;
?>
</td>
<td style='vertical-align:top;'>
<?php
}
// display queue name if new queue
if ($displayQueue!=$workerQueue) {
// set queue name for next loop
$displayQueue = $workerQueue;
// gap between queues except for the first one
if ($rowCount>2) {
?>
<br />
<br />
<?php
}
?>
<span style='font-weight:bold;'><?php echo $displayQueue ?></span><br />
<?php
}
// display worker
?>
<li style='margin-left:5px;'><?php echo $workerName ?></li>
<?php
}
}
// error if no connection
else {
?>
<span style='color:#f00;'>Connection to Altiris could not be made.</span>
<?php
}
?>
</td>
</tr>
</table>
<?php
// close "Altiris"
odbc_close($myConnection);
?>