So, I was programming today and we found a little bug on the Service-Now implementation that we are doing. We created a UI Action (javascript) to make a copy of many of the details in our Change Request record into a brand new Change Task record and this appears to work without any issues.
What I am noticing is that, on the "New" button task, after I fill in all of the details, I have a business rule (for both sides) that should be assigning an approval to requested for the resource identified in the Change Task. Again this works for our custom action (though this is running as a business rule in the before update status).
If I put in debugging code, I can see that it is supposed to be hitting all of the major components of the add approval code and is passing in the right parameters. When I do this from other processes that kick off this business rule, it works without error ...
Any thoughts?
The day to day meanderings and experiences that I am about to put myself through between work and the many side projects I have decided to take on to keep myself very, very busy ... We'll see how it all goes from here.
Friday, October 23, 2009
Friday, October 16, 2009
Glide Records and addQuery
Alright, we are having fun programming again and writing business rules in Service-Now logic ... It's a beautiful thing and I have been building some complex business rules that are way better than the work flow allows us to get to.
Right now, I am working on a really sweet Risk Calculator to automatically calculate our level of risk for a specific change.
Should be fun ...
Back to building my addQuery scripts.
Right now, I am working on a really sweet Risk Calculator to automatically calculate our level of risk for a specific change.
Should be fun ...
Back to building my addQuery scripts.
Tuesday, September 15, 2009
It's Dynamite ....
Wait no, it's javascript and I'm having way too much fun ...
Back to Service-Now development, I'll try to post some cool scripts later from my workflows.
Back to Service-Now development, I'll try to post some cool scripts later from my workflows.
Monday, September 14, 2009
Interesting Article about Windows 7
So, Microsoft is now ready for companies to start pushing Windows 7 to their users ... The release of the MDOP desktop management tools is currently scheduled for the end of October ...
Yay!
http://blogs.zdnet.com/microsoft/?p=3939
Yay!
http://blogs.zdnet.com/microsoft/?p=3939
Can Anyone Say "Crazy Busy"...
Yay !!!
I've been quiet and it's mainly because I have been busy. I've been working on getting details in for PCs that we will replace (for budgeting purposes) and also trying to get things with Service-Now rocking and rolling for the company I work for. It's a seriously good time.
Today, for example, I made some serious progress toward getting our workflows for our Change Management solution completed. These are taking longer than I would like, but I am having a good time trying to get data out of the Child Tasks and feeding those back through the process.
More updates to follow ...
I've been quiet and it's mainly because I have been busy. I've been working on getting details in for PCs that we will replace (for budgeting purposes) and also trying to get things with Service-Now rocking and rolling for the company I work for. It's a seriously good time.
Today, for example, I made some serious progress toward getting our workflows for our Change Management solution completed. These are taking longer than I would like, but I am having a good time trying to get data out of the Child Tasks and feeding those back through the process.
More updates to follow ...
Tuesday, September 1, 2009
Configuration Management
It's week 2 of our configuration management workshop and I'm busily trying to keep up with and understand what details we are going to put into our CMDB and how to maintain the relationships ....
Lots of new and interesting concepts and ideas, watching us put them into place, will be even more interesting.
Lots of new and interesting concepts and ideas, watching us put them into place, will be even more interesting.
Friday, August 28, 2009
SQL Server and It's "Native" Client
So, with SQL Server 2005, Microsoft did a beautiful thing and introduced the SQL Server Native Client as an attempt to homogenize it's SQL product line for system administrators and developers across the board...
Today, that decision was found to have caused our Enterprise a major pain in the rear as we found that a couple of the Crystal Reports that we have going against one of our Accounting Systems is failing with an error that says that the server is too busy to respond ... The report then continues and finishes the run.
Odd...
Time to start continuing my looking for something ... Can anyone say that I am looking for a needle in a haystack the size of the universe.
Today, that decision was found to have caused our Enterprise a major pain in the rear as we found that a couple of the Crystal Reports that we have going against one of our Accounting Systems is failing with an error that says that the server is too busy to respond ... The report then continues and finishes the run.
Odd...
Time to start continuing my looking for something ... Can anyone say that I am looking for a needle in a haystack the size of the universe.
Sunday, August 16, 2009
Altiris and KB973869
Alright, so issue for Sunday ...
Our development servers had their patch management pushed through Altiris last night with success all around, minus the above mentioned patch.
Our situation, this appears to have installed on some Altiris managed servers, most of them being Windows 2003 R2 Sp2, while missing on Windows 2003 SP2.
I'll keep you posted if anything new comes up.
Wednesday, August 5, 2009
Office 2010 Technical Preview
Well, it's about time, I just got my invite to the Office 2010 Technical Preview ...
More details to follow ...
Downloading Now ...
More details to follow ...
Downloading Now ...
Monday, August 3, 2009
I <3 Our Developers
Desktop Engineer: What object are you using to create and write to the Excel file that you have on the server from your SSIS package?
Developer 1: We aren't using any object. Office was on the old server right?
Server Engineer: Office is not installed on the SQL Server.
Developer 2: You need to figure out what object we are using then.
Desktop Engineer: Will you allow us to see how you are building the object that is reading / writing Excel?
Developer 1: Of course, but let me tell a long rambling story here ... [For Brevity, I have removed the story]
Desktop Engineer: I see you have a connection object referencing Jet 4.0 and linking to the Excel file. Have we verified that the rights are setup properly for the account that is running this from our batch?
Developer 1: ... [More Rambling Stories] ...
Desktop Engineer: Let me ask again, have we verified the rights of the account?
Developer 2: No.
Desktop Engineer: Can someone verify these rights?
Server Engineer: I will check the rights if someone can tell me the account being used.
Developer 1: ... [Still Rambling] ... I will check on the account.
*** Then developer 1 continues to stand there, looking, desktop engineer shoes him off asking for the account info again ***
The long and short of it comes down to this ...
I spent half of my morning hunting down what objects we are using to perform Excel reads and writes from our overnight batch processing because our development server did not appear to have the right objects available. When we finally started to find some information, we determined that SSIS overwrote some registrations of the MDAC 32 bit on a 64 bit SQL 2005 Server.
The learnings here ... sometimes it's worth verifying that the object you are trying to reference is available in the OS in the places where it needs to be. In this case it was the OLEDB.JET.4.0 object that had become improperly registered. This seems to be common with SSIS and MDAC on 64bit Windows 2003 Servers.
Developer 1: We aren't using any object. Office was on the old server right?
Server Engineer: Office is not installed on the SQL Server.
Developer 2: You need to figure out what object we are using then.
Desktop Engineer: Will you allow us to see how you are building the object that is reading / writing Excel?
Developer 1: Of course, but let me tell a long rambling story here ... [For Brevity, I have removed the story]
Desktop Engineer: I see you have a connection object referencing Jet 4.0 and linking to the Excel file. Have we verified that the rights are setup properly for the account that is running this from our batch?
Developer 1: ... [More Rambling Stories] ...
Desktop Engineer: Let me ask again, have we verified the rights of the account?
Developer 2: No.
Desktop Engineer: Can someone verify these rights?
Server Engineer: I will check the rights if someone can tell me the account being used.
Developer 1: ... [Still Rambling] ... I will check on the account.
*** Then developer 1 continues to stand there, looking, desktop engineer shoes him off asking for the account info again ***
The long and short of it comes down to this ...
I spent half of my morning hunting down what objects we are using to perform Excel reads and writes from our overnight batch processing because our development server did not appear to have the right objects available. When we finally started to find some information, we determined that SSIS overwrote some registrations of the MDAC 32 bit on a 64 bit SQL 2005 Server.
The learnings here ... sometimes it's worth verifying that the object you are trying to reference is available in the OS in the places where it needs to be. In this case it was the OLEDB.JET.4.0 object that had become improperly registered. This seems to be common with SSIS and MDAC on 64bit Windows 2003 Servers.
Tuesday, July 28, 2009
Microsoft .NET Framework (version 3.5 SP1)
In times past, Microsoft .NET Framework required a "FullTrust" to be able to run .NET applications from a network share. This architecture was put in place many years ago as a stop gap for hackers getting an exe onto a share and having people click on it.
Microsoft now, with 3.5 SP1, has given the ability to for managed code to run like native code from a network share.
The good:
We no longer need to maintain a list of network shares that users need to have "FullTrust" set up on and the issues around troubleshooting these exceptions has become much easier.
The bad:
This brings us back to a state of being less controlled about deployments. One of the things that our developers have a tendency to do is just point people to a new location for their programs because from the network share, they don't have to go through anyone else to "deploy" their new piece of software.
Aaaarrrrrrggggg ... I love MS Architecture changes ...
Service-Now.com Training
Alright, I have a little bit of time as our SAN has currently taken down my ability to work on my desired projects for this morning, so I thought I would enlighten the world on the Service-Now training that I received last week in San Diego ...
First off, San Diego is a beautiful city and if you are going there for vacation, it's probably worthwhile. Seems like it would be a fun place to hang out and enjoy life a little bit...
Second, the training itself takes place in an old building located about 45 seconds from the beach, nice enough that you can see the beach from the building.
From there, we can discuss the actual class itself...
For starters, the training was held in a large open room, with about a dozen rented tables and roughly 30 plastic chairs. The $15 variety you buy from Wal-Mart. Each table had a LAN cord run to it, but none of them were plugged into anything and there were no computers (as other such training classes I have been to have had at least a cheap computer for everyone to work from).
Upon setting up my laptop, I noticed that they had a wireless connection available, and after about 30 minutes, they finally told us the password to connect ... From there, we were able to crash the airport wireless that they had. Even after setting up the second wireless AP, we were able to crash it as well.
We then, were divided into 3 training regions on the Service-Now training servers (very slow). The wireless network kept dropping our connections.
The training materials didn't exist. The instructor, while nice enough, spent both days kind of rambling through a lot of the same material that the proof of concept demo had gone through. Alot of what was covered, I actually knew going in after playing with the tool for a very limited amount of time.
The workflow portion of the training, which is where I thought I might get the most benefit, was about an hour and a half long and mainly consisted of making some very minor modifications to an existing workflow and creating a very, very light workflow.
As not to sound completely negative about the experience, with a little forethought and some proper materials, I think the training could have been very effective.
The most informative part of the class was having their lead support person in class as he was prompting the instructor for real world examples of some of the things that she was pushing so quickly to get through.
- A handout ... A reference book or even a reference web page of some sort to follow along step by step with what the instructor was going through.
- Narratives about how this situation applies in the real world. What times have you seen this go well? When have you seen it go bad?
- Here are watchouts and places to be careful, places we have seen other customers get themselves into trouble from time to time.
- You get the idea.
Monday, July 27, 2009
Sungard EAS 10.0 - Client Installation
For those of you that might being trying to build an application package for Sungard EAS, I had to work with Sungard to get the unofficial means by which to install the package silently.
The steps come down to:
- Install the package normally from the Setup.exe (Installshield) package given by Sungard.
- Retrieve the EAS Client.msi file from c:\windows\Downloaded Installations\{packageGuid}\EAS Client.msi.
- Use Wise Packager to build a Transform file for the msi package.
- Launch "msiexec.exe /i "Eas Client.msi" /qb TRANSFORMS=NewTransform.mst"
This should perform the installation as desired.
For my specific package, because there will be an update from version 8.2 to 10.0, I have added a line to delete the older C:\Windows\EASClnt.ini file. This should work to keep things from causing issues with the update itself.
Good luck
Wednesday, July 22, 2009
My Silence
I know that some of you have noticed that I have been kind of quiet lately, this is due to my company being involved in purchasing some new software for IT Service Management so I have been laying low ...
This week, however, I'm in San Diego and about ready to start making a little noise about Service-Now ... details to follow soon (as this will consume my life for the next few months, I already know).
This week, however, I'm in San Diego and about ready to start making a little noise about Service-Now ... details to follow soon (as this will consume my life for the next few months, I already know).
Monday, July 6, 2009
Packaging and HKCU ...
One of the problems facing lots of packagers is how to place data into all users' HKCU key for when they log onto a PC once again... Keep in mind that we are using Wise Package Studio 7 and Altiris 6.5 NS packages.
Here we go with the solution that I decided on:
After going through and seeing that there was valid information in the HKCU key, we went and changed the job to run for each logged on user (once)...
Hope this works, if not, you will see more data added to this post.
Here we go with the solution that I decided on:
After going through and seeing that there was valid information in the HKCU key, we went and changed the job to run for each logged on user (once)...
Hope this works, if not, you will see more data added to this post.
Wednesday, June 24, 2009
My Desktop Frustrations ...
Some of you know that I have been having a good time lately with a Hard Drive crash on my desktop. It appears that my 400 GB Western Digital (yes, another Western Digital) has crashed and went into a really weird state (... even more fun to troubleshoot under Windows 7 ...).
For a quick description, in case you see something similar, my desktop went to a state where the OS was unusable, but no errors were being thrown. Friday night, I played a Podcast for my son and let him listen to that, Saturday morning, when logging onto my PC, I logged in and then sat and waited for the desktop to appear.
Well, this of course, was not normal behavior, so I eventually (after waiting 5 minutes) performed a hard shut down. Upon rebooting, I was greeted with the same issue, it made it all the way into the OS, but wouldn't make it past the log in screen (even though I typed my password right).
Given that I recently upgraded my Video Card (love my nVidia 9800 GT), I thought maybe my PC had finally overheated and my Video Card was toast. I started pulling things apart, inspecting the drives and looking for / smelling for anything that didn't look right.
Surprise, Surprise, Surprise, I didn't find anything ... At this point, I was really concerned, but let my PC sit and just didn't even want to think about it. Instead I just worked on the laptop throughout the weekend.
Come Monday, I spent some serious time looking at the parts and dropped another, smaller, slower drive I had in and dropped the OS onto the drive to allow me to check all of the other components. I spent the rest of the evening verifying that everything else was working as desired.
... I hate Western Digital drives ...
I now have, shiny, a second 1.5 TB Seagate drive and I have mirrored the two drives to allow me a little better performance. SO FAR ... SO GOOD ...
I have installed Windows 7 flawlessly and it appears to be running very nicely. I have data being restored to the PC from the backups and it shouldn't be too much longer until my PC is back up and running exactly as it should be.
Have a great night!!!
For a quick description, in case you see something similar, my desktop went to a state where the OS was unusable, but no errors were being thrown. Friday night, I played a Podcast for my son and let him listen to that, Saturday morning, when logging onto my PC, I logged in and then sat and waited for the desktop to appear.
Well, this of course, was not normal behavior, so I eventually (after waiting 5 minutes) performed a hard shut down. Upon rebooting, I was greeted with the same issue, it made it all the way into the OS, but wouldn't make it past the log in screen (even though I typed my password right).
Given that I recently upgraded my Video Card (love my nVidia 9800 GT), I thought maybe my PC had finally overheated and my Video Card was toast. I started pulling things apart, inspecting the drives and looking for / smelling for anything that didn't look right.
Surprise, Surprise, Surprise, I didn't find anything ... At this point, I was really concerned, but let my PC sit and just didn't even want to think about it. Instead I just worked on the laptop throughout the weekend.
Come Monday, I spent some serious time looking at the parts and dropped another, smaller, slower drive I had in and dropped the OS onto the drive to allow me to check all of the other components. I spent the rest of the evening verifying that everything else was working as desired.
... I hate Western Digital drives ...
I now have, shiny, a second 1.5 TB Seagate drive and I have mirrored the two drives to allow me a little better performance. SO FAR ... SO GOOD ...
I have installed Windows 7 flawlessly and it appears to be running very nicely. I have data being restored to the PC from the backups and it shouldn't be too much longer until my PC is back up and running exactly as it should be.
Have a great night!!!
Labels:
HDD,
HDD Crash,
Personal Computer,
Windows 7
12 Simple Ways To Impress Your Boss And Everyone Else
This was an interesting article I read last night ... If nothing else, it might help teach someone to suck up a bit (i.e., maybe I will finally learn).
12 Simple Ways To Impress Your Boss And Everyone Else
Posted using ShareThis
12 Simple Ways To Impress Your Boss And Everyone Else
Posted using ShareThis
Labels:
Completely Random Crap,
Fun,
Interesting Read
Scanners
In our organization, we are running a document imaging product that uses High Speed Auto Feed scanners to create and publish documentation to support the business needs for each of our customers.
Yesterday, I had a meeting to discuss how to test these for a future upgrade (all future upgrades) of the document management software. Today, I have one of my co-workers diligently working to see if we can use our big network Canon Multi-Function Devices (Canon 3570 Printer / Scanner / Copier) to perform testing as needed.
If this is successful, hey, we can avoid buying a device used a couple of times a year for testing or, more likely, a device we buy that somehow gets worked in for production use and then unavailable when necessary for testing upgrades in the future ...
Now realize, I do understand that by opening the door to using our high end multi function devices, we may end up with those being used when there is a back log of things to scan and process. If this happens, we will have to enforce that this will need to be scheduled (if nothing else)...
Details to follow.
Yesterday, I had a meeting to discuss how to test these for a future upgrade (all future upgrades) of the document management software. Today, I have one of my co-workers diligently working to see if we can use our big network Canon Multi-Function Devices (Canon 3570 Printer / Scanner / Copier) to perform testing as needed.
If this is successful, hey, we can avoid buying a device used a couple of times a year for testing or, more likely, a device we buy that somehow gets worked in for production use and then unavailable when necessary for testing upgrades in the future ...
Now realize, I do understand that by opening the door to using our high end multi function devices, we may end up with those being used when there is a back log of things to scan and process. If this happens, we will have to enforce that this will need to be scheduled (if nothing else)...
Details to follow.
Tuesday, June 23, 2009
Altiris, Altiris, Altiris ... Reporting in a nutshell
So, outside of my normal meetings and some random discussion about things going on with my current projects (only a couple of hundred, no big deal), I have been tasked with creating a series of reports to show how our deployments are progressing...
Ideally, I would like to see us be able to develop a report that shows each package that we have, how many users are targeted, how many have been active on the network in the last 30 days and how many have success or failure codes... The percentage of success should be based on the successful installs vs the 30 day log ins (as I don't believe that holding us accountable for PCs not on the network is fair).
This approach will give us a long term deliverable for our Altiris implementation and allow us to quickly see how any particular deployment is progressing.
More details to follow (along with the sql for this once finished).
OK, a little SQL code to show some possibilities here:
Ideally, I would like to see us be able to develop a report that shows each package that we have, how many users are targeted, how many have been active on the network in the last 30 days and how many have success or failure codes... The percentage of success should be based on the successful installs vs the 30 day log ins (as I don't believe that holding us accountable for PCs not on the network is fair).
This approach will give us a long term deliverable for our Altiris implementation and allow us to quickly see how any particular deployment is progressing.
More details to follow (along with the sql for this once finished).
OK, a little SQL code to show some possibilities here:
SELECT A.[AdvertisementName]
, [Succeeded] = (SELECT COUNT(*) FROM [AeXInv_AeX_SWD_Execution_Summary] AS B WHERE A.[AdvertisementId] = B.[AdvertisementId] AND (B.[Status] = 'Command executed' OR B.[Status] = 'Finishing asynchronously'))
, [Failed] = (SELECT COUNT(*) FROM [AeXInv_AeX_SWD_Execution_Summary] AS C WHERE A.[AdvertisementId] = C.[AdvertisementId] AND C.[Status] != 'Command executed' AND C.[Status] != 'Finishing asynchronously')
, [% Successful] =
(SELECT COUNT(*) FROM [AeXInv_AeX_SWD_Execution_Summary] AS B WHERE A.[AdvertisementId] = B.[AdvertisementId] AND (B.[Status] = 'Command executed' OR B.[Status] = 'Finishing asynchronously'))
* 100
/ ((SELECT COUNT(*) FROM [AeXInv_AeX_SWD_Execution_Summary] AS B WHERE A.[AdvertisementId] = B.[AdvertisementId] AND (B.[Status] = 'Command executed' OR B.[Status] = 'Finishing asynchronously'))
+ (SELECT COUNT(*) FROM [AeXInv_AeX_SWD_Execution_Summary] AS C WHERE A.[AdvertisementId] = C.[AdvertisementId] AND C.[Status] != 'Command executed' AND C.[Status] != 'Finishing asynchronously'))
FROM [AeXInv_AeX_SWD_Execution_Summary] AS A
GROUP BY A.[AdvertisementName], A.[AdvertisementId]
ORDER BY A.[AdvertisementName]
Friday, June 19, 2009
Friday Afternoon Jokes
An elderly man in Kentucky had owned a large farm for several years. He had a large pond in the back... It was properly shaped for swimming, so he fixed it up nice with picnic tables, horseshoe courts, and some apple, and peach trees.
One evening the old farmer decided to go down to the pond, as he hadn't been there for a while to look it over. He grabbed a five-gallon bucket to bring back some fruit.
As he neared the pond, he heard voices shouting and laughing with glee. As he came closer, he saw it was a bunch of young women skinny-dipping in his pond.
He made the women aware of his presence and they all went to the deep end.One of the women shouted to him, "we're not coming out until you leave!" The old man frowned, "I didn't come down here to watch you ladies swim naked or make you get out of the pond naked."
Holding the bucket up he said, "I'm here to feed the alligator."
Some old men can still think fast.
One evening the old farmer decided to go down to the pond, as he hadn't been there for a while to look it over. He grabbed a five-gallon bucket to bring back some fruit.
As he neared the pond, he heard voices shouting and laughing with glee. As he came closer, he saw it was a bunch of young women skinny-dipping in his pond.
He made the women aware of his presence and they all went to the deep end.One of the women shouted to him, "we're not coming out until you leave!" The old man frowned, "I didn't come down here to watch you ladies swim naked or make you get out of the pond naked."
Holding the bucket up he said, "I'm here to feed the alligator."
Some old men can still think fast.
Thursday, June 18, 2009
FT Job - New Mass Storage Drivers
For starters, this post is for Windows XP images, I focus on Windows Imaging (WIM) format, so feel free to modify for ghost images (and if you do, please link back so that everyone can follow along).
One of the painful points in doing this has always been getting new Mass Storage Drivers (for those that use imaging technologies, it's the painful 7B error at the end after dumping the image onto the new hard drive).
This error of course stems itself from the fact that there is not a standard SATA chipset (and for Vista it's not needed) that all mother board manufacturers use.
Don't sweat it, this is a quick run down of what I am planning on implementing for my company, that will make the work effort as light as possible for anyone that has to update these going forward. I plan to follow this post up with several posts on the engineering of the actual plan and any tweaks along the way. Call this my design document...
We currently are using the Micrsoft Deployment Toolkit and a single WIM image for deploying all of our hardware models for our end users. In doing this, each time we receive a new hardware model with a new Mass Storage option, we have to break open the WIM, add the driver.sys, the driver.inf, update the system registry with the critical device database entries and then update the services to reflect the proper information for the new drivers.
<<<>>>
Going forward, I will be creating a MassStorage.WIM file that will contain, simply, the driver.sys, the driver.inf and the updated c:\windows\system32\config\system files. I will then update the Task List with a task, after Installing the Operating System, Install the Mass Storage WIM file by using the command "imagex /apply MassStorage.wim c:\". The index will of course be the version of the MassStorage.WIM necessary to apply the latest set of files.
Have a great day.
Labels:
Hardware,
Image,
Imaging,
Mass Storage,
Microsoft Deployment Toolkit,
Windows XP,
XP
Subscribe to:
Posts (Atom)