In my workplace, one of my senior from another team, blaming me saying i am not providing proper input for his work. Even if i tried my level best to explain what he need, he acts like still i missed something. He is complaining in front of others that i didn't give proper data for him, so delaying/delivering less quality product. I afraid to react since he have good hold on management ,so used to keep quiet always. I am sure no one can satisfy him since even i gave all the needed data he is blaming me that the data is not sufficient. How to handle this?
Two things going on here.
Are you getting clear instructions on what is expected from you? If no, send an email to the guy and CC your boss, asking for guidance or even a checklist. Be civil - make it like you're asking for the help "please help me to ensure I provide what is required".
If you do get instructions - make sure you fulfil them 100% each time.
It's not on that your colleague is publicly berating you. Email him to politely ask that he emails any issues he has with your work and to refrain from bringing it up in front of others.
If he continues, say to your boss that you aren't happy with the public admonishment (regardless of if you earn it or not). If your boss refuses to do anything about it, freshen up your resume and look for a new job where you will get better treatment.
Ah yes, we have one of those in our office. Super annoying isn't it?
If I were you, I'd just put it all back on them. Explain that you thought you'd provided them with everything they needed, and if it was wrong, they needed to tell you there and then - not when the project was in danger of being delivered late. Furthermore, they need to be much clearer next time.
Whether you wish to reciprocate by telling them all this openly in the office is your call, but in my experience, this needs to be nipped in the bud by making it clear that there are two sides to the story otherwise this negative behaviour becomes the norm.
Exactly as Robbie says; if something feels the need to attack you in front of others, they you should most definitely defend yourself in public. Saying nothing is the worst that you can do.
So if he ever again says in public that you haven't delivered the proper data, then you need to strike back. For example: "You were working on this for three months, and now when you are not meeting your deadline, it is the first time that you tell me that I supposedly didn't give you the right data. Three months. You could have asked at any time during these three months. If there was anything wrong with my data. It looks to me that you can't do your job and try to blame others".
Edit: Blaming you in public is deeply unprofessional. Blaming you in his office, or blaming you in your bosses office with you, him and the boss present, that is one thing, but blaming you in public is something that you don't need to accept from anyone.
So even if all his accusations were correct, you can say, in front of everyone (since he started it), that you find it unacceptable that he is accusing you like that in front of everyone. That's something that your boss will agree with because it's impossible to disagree. And you have changed the discussion to something where everyone agrees you are right and he is wrong. If he wants to change the subject back, you don't let him. Say "what you are saying is something that should never be discussed in front of my colleagues. Do you agree with that? "