One Slipped Key

Death By ChocolateWhile working I wrote a little bit of SQL, trash really because it was just a one-shot query, real short too, and I wanted to show off the SQL code for making the iModules degree info pretty. Instead of clicking open, I clicked the save button. I found the file I thought I was opening and double-clicked. The computer asked me “Are you sure you want me to save using this file, overwriting the old file?” and I absent-mindedly clicked Yes.

The little useless fragment of SQL code replaced my huge SQL script. Boom. All gone. So sorry.

So then I was thinking about how I could recover the file, that it was on my laptop at home and so if I could turn off the Wifi at home and start my laptop I could copy the file before the Dropbox sync app replaced what I needed with my mistake.

But then I thought there should be something in Dropbox that helps address my stupidity. Turns out there is. Right click on your oops file, click on “View Previous Versions” and it opens a website and shows you all the previous times you saved your file on the service. Oh look, there’s all my hard work, right there. Click. Whew!

So, how much do I love Dropbox? Even more.

 

photo by: JD Hancock

Hindsight – 2/5/2004

As I was looking over my old LiveJournal posts I found this gem from 2/5/2004, a whole 7 years ago! Gosh how time flies! Enjoy!

Busy Busy Busy… Buzz Buzz Buzz

Whew! Just got done polishing the new chrome on the new database system here at work. We had a rep from the vendor come in to deliver the first cut of the converted database and then walk us through all the errors that came up in conversion so we can take specific steps to make sure our database that goes into the second (and final) cut is as good as it’ll ever be.

Of course, the road to happiness is riddled with potholes. The rep, Yvonne, arrived, installed the new database but nobody told us that the new database was ZIP’ed using WinZip 9 beta and all we had was WinZip 8.1, so we couldn’t unzip the database. Adding insult to injury, the server we were working on was so well secured that getting WinZip 9 beta proved to be herculean in its own regard. We eventually got it, unpacked the database and installed it. >mini-fanfare< Then we fiddled around with establishing OLAP cubes for a subsystem that might only be used by at most 2 people – then once that was done we went back to Walwood and I worked on getting our replicated database on our report server to work.

The rep from our vendor came in and created a queue for us and told us that it would work. I then spent the next two days listening to all the errors present in the data and in-between times when we weren’t talking about the conversion errors I was working on getting the replicated report server to work as it should. For three days I was smacking my forehead against a brick wall, errors ranging from “can’t login” to “can’t add NULL value to table yada yada yada” and I even went so far to discover to my chagrin that a database I thought I needed wouldn’t replicate in a merge dynamic properly, only transactionally. This semi-solution would break down when you deleted or added any report criteria, since it would add a table to the primary server and then cause the replication process to panic. As it turns out, one of the settings the rep from the vendor made was wholly incorrect, instead of pointing to our report server it should have been pointing to our main database server instead. Once I fixed the setting I realized that I didn’t need to replicate the report database at all and once I fixed that – everything fell into its proper position – now you can add and edit and delete criteria willy-nilly without causing replication errors because there is no need to replicate that part of the database. Whew. After three days of being unable to make any of the replicated server work I had a little Eureka moment and did a happy dance.

What I thought would take nearly all day today was done by 9:30am. I still have a very busy day but at least now with a major part of it deflated it doesn’t seem like such an impossible task. A part of me gets all twitchy that I, an untrained yo-yo can figure out the vendors product and fix what the rep broke. A part of me is glimmering tho, when the rep was here she asked me “So, did you go to class for SQL 2000?”, “No.”, “Do you at least have a manual or a guidebook?”, “No.”, “Well, how did you figure out how to do what you are doing?”, “I just did it, didn’t seem too hard to me…” and of course she just sat there staring at me like I was growing antlers.

And people wonder why I question the value of certifications. Bah. 😉

 

Williamsburg – November 17th 2010

Today flowed a lot like yesterday did. Woke up, got a continental breakfast and attended sessions. Most of the sessions were useful, one got me considering swapping out my homemade ‘clever SQL use’ for T-SQL Cursors (cue the horrified screams of SQL admins everywhere!) and we were able to enjoy a quick lunch and then have our users group meeting. Mostly we’re happy with the response we’ve gotten from Sage when we initially pitched huge fits back in Chicago, then in Denver, and finally in Atlanta during previous Sage Summit events. They listened to us and a good portion of that I believe was our particular user group writing a ‘Meeting Statement’ and sending that to Sage. By doing that and not leaving it all for the pleasantries of verbal communications they could take the things we wrote to corporate management and definitively show that the users were upset. This time around we decided to do the same document style, a written statement, but instead of being full of piss and vinegar we expressed how happy we were that they responded so well to our statements of displeasure. We also indicated some useful ideas for Sage Summit 2011 which will be held sometime in July in Washington, DC. It’s looking like I may be attending that event, but only time will tell if that’s the case.

Once the convention concluded at 3pm I figured I wasn’t going to be paying any visit to family on my trip to Virginia, which I half-expected, it’s just too much distance and too much trouble and in the end ‘All’s Well That Ends Well’. I instead helped my coworkers go through another round of shopping at the outlet malls, retail therapy doesn’t being to describe it. 🙂 I broke down and after several years of simply pocketing my ID and plastic I broke down and bought a front-pocket wallet. I didn’t even know really that they made such a thing and when I found them in a Totes outlet, even the proprietor didn’t even know they made them like that. They were in a discount rack, originally $15, marked to $9. What the hell, I figure since I saved scads of money on food and supplies last week and this week that I can certainly afford a few splurgy purchases.

Tomorrow is going to be a madhouse. Our flight leaves Richmond at 9:40am, so we have to be there by 8:40, and the people at Kingsmill said that the hour drive to get to Richmond is pretty spot on because as they said “All the Military people are travelling south in the morning, so you won’t run into traffic coming north.” So… we are planning on getting on the road by 7:30am. I’m all packed up and ready to go, all I have to do is shower and load the few toiletries into my bag and I’m ready to go. Once we get back to Kalamazoo we have to rush to the office so we can all fill out our reimbursement forms so we can be reimbursed in a timely fashion. I think right after that I’m going home, as there really isn’t any point in starting work half-way through the day.

Dinner was good tonight, we went to the Whaling Company restaurant in Williamsburg. We got a far better dinner for more competitive prices than the last place that I dinged so bad for having crappy selection and outrageous prices. Now I am sitting back, helping my one coworker polish off the beer she bought so she wouldn’t leave any behind. This is a difficult task I feel I have no choice but to accept. 😉

Tomorrow, the flight. Tonight? Sleep.

Bloody Hell

What started out as a very innocent SQL-related question quickly expanded into an abominable Frankensteins Monster.

One of my coworkers asked if there was a way to create a SQL View in SQL 2000 so that when queried it would spit out a constituent’s ID and then list, in comma-delimited fashion the years they won a degree from WMU’s Haworth College of Business, in earlier-then-later year order. So she wanted:

0000045321  1968, 1974, 1978

Here is how I did it. I created a Frankensteins Monster. It’s two views and a function. I have unleashed this abomination upon the face of the Earth and I feel a lot like Dr. Frankenstein, maniacally dry-washing my hands and laughing “Muhahahahaha!” a lot. It doesn’t take much to get that out of me. 🙂 The code is beyond the More… tag, if you care to expose yourself to the abomination… Continue reading