1

My boss gave me a task in which I should create an application using a specific table in our system, let's call it table1, the problem is, table1 is not compatible with table2 which is the table used by my app(and there's only one suited for such task), he noticed his mistake and told me to use table3, but table3 uses character format as primary key and table2 uses integer format for table3's foreign key, I reported it to my boss, however, instead of helping me, he told me to send an email to the guy who knows about that table, but the guy is in one of our customer's factories and won't be back for a week. Therefore, I'm working on other less important things because I'm depending on that table, it's been 2 days and the guy hasn't replied yet. What should I do?

P.S.: I may neither change the table's properties nor create a new one.

  • I guess it is mysql or something similar. Why can't you use integers instead of strings. This seems an XY problem to me. Which technical problems do you have and what did you tried? – llrs Feb 23 '16 at 13:05
  • Find somebody else that can help you - or google stuff and read up. Experiment. – Ed Heal Feb 23 '16 at 13:06
  • There's no one else, he's the guy responsible for the database, I can't even think about changing it, I knew it would sound like I'm a noob, but if I had some control over it I would change it, sorry for making this question kind of technical – Kyle Feb 23 '16 at 13:11
  • Surely other people in the company knows about databases. If not perhaps time for you to learn – Ed Heal Feb 23 '16 at 13:12
  • @EdHeal I know how to fix it but I don't have the permission to do so – Kyle Feb 23 '16 at 13:17
9

OK, so you're blocked on a task for reasons beyond your control. Walk into your boss's office (or pick up the phone, send an e-mail or whatever) and explain the situation: you can't do stuff until this guy is back in the office. Ask what else you should be doing while you wait.

This is your boss's problem to fix - either he needs to find someone who can help you, or needs to find you a different task to work on.

  • I've talked to my boss and he was like "talk to guy", and then turned his back at me and walked away – Kyle Feb 23 '16 at 13:16
  • 2
    That's your solution right there then, you can't progress until you talk to the guy. It's out of your hands. Work on another task until then. – Kilisi Feb 23 '16 at 13:22
  • 3
    @Mr.Derpinthoughton: you've taken the correct action when you are waiting for a colleague to get back to you (i.e. tried to speak to the guy, realised he's not available, let your boss know). To be safe, i would email your boss a roundup of what you've just said. That way, when someone asks why the project was delayed by a week, you have documentation saying you consulted your manager – WorkerWithoutACause Feb 23 '16 at 13:23
  • @WorkerWithoutACause Oh that's what I'm gonna do right now, thanks – Kyle Feb 23 '16 at 13:25
  • 1
    My standard is "document everything". Do more than would be expected as reasonable, email your boss at every step so he sees you are on the case, and create a spreadsheet detailing every attempt at resolving this, complete with timestamps. – Richard Says Reinstate Monica Feb 23 '16 at 14:47
1

I know you've got the answer you wanted to hear, but...

Have you tried all practical means to contact the off-site guy? If you've emailed, see if they have a company mobile phone. If you've phones and left a message, try emailing.

In the meantime, have a good long look at the tables. Is the "foreign key" in table 3 really indexing the primary key in table 2? Perhaps it's a reference to something else. Perhaps the text in Table 2 contains a unique number. If you can fathom out how the tables relate to each other, you may be able to solve the problem yourself.

  • I like your answer, I tried to contact him in all possible ways but the, I'm sorry but he's not replying/answering his phone on purpose, S.O.B. is the son of one of the bosses (this is a small company) that's why they trust him, but he can basically do whatever he wants to, I'm tired of this company, small companies makes a more "friendly" environment but for the same reason it's more "friendly" it's sometimes poorly managed – Kyle Feb 23 '16 at 13:51
  • 1
    @Mr.Derpinthoughton, it is inexcusable to expect people to be available when they are off. Get out of that bad habit now. – HLGEM Feb 23 '16 at 15:05
  • @HLGEM, from OP's description it looks more like the other person is working onsite at a customer, not off. If he is working he should respond, delays are acceptable if the shop floor has no workspace to check e-mails, but overnight should get an answer – cdkMoose Feb 23 '16 at 15:36
0

What you do if you need to join to tables with different datatypes and you can't change them to make them compatible is that you convert the datatypes in the query. Something like (This is a SQl server example)

select field1, field 2 
from table1 t1
join table2 t1 
on t1.id = cast(t2.id as varchar (50))

So you don't need to wait for him at all. BTW this is not optimal, it will be slower than if they were both ints. But if the schema can't be changed, it is all you can do. You would have found this out by asking the questions on Stack Exchange.

  • Asking this question would get -7 on SE. – Richard Says Reinstate Monica Feb 23 '16 at 16:43
  • I don;t see why asking the technical part of how to handle joining when the datatypes are different would get any negative votes at all. Asking what he asked here, yes. – HLGEM Feb 23 '16 at 18:12
  • Implementing code to workaround a bad design is probably how the design was bad in the first place. You have to talk to the database person first you might be able to get the design corrected. – user151019 Feb 24 '16 at 0:56
  • @mark, using the workaround gets the task done and he can complete/test the other parts while he waits for the database person. If he can change things, then undoing the workaround takes roughly 15 seconds. – HLGEM Feb 24 '16 at 14:26
  • Nothing takes 15 secs - it has to be tested etc and also as not visible the table owner has no incentive to fix it so in the long run (say a month if the wrong requests come in) you are in a worse state – user151019 Feb 24 '16 at 14:31
0

If I understand you correctly, the task you are given has an dependency that is unavailable ATM. My advice is to work on other related tasks that does not depend on the dependency such as drafting of the application documentation. High level aspects such as describing the business purpose, outlining the architecture..building example use cases seem to be tasks you can do and are good to include in the documentation to your application.

To give you an example, I was evaluating some change management documentation for an recently launched application at my employer. Testing evidence by QA was missing for some changes migrated to PROD. Several developers who had worked on the programming were unavailable on PTO. Accepting there will be a delay in getting this information, I moved to other key aspects elements of the review such as checking SoD, proper approval, authorized access etc...

If push comes to shove, you might need to escalate such as physically going over to his work station (assuming both of you are in the same office). Hope this helps and good luck!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.