Q:

Plot3D with Piecewise is Empty

I don't understand what has happened here. Please can someone explain? I start by defining a 2D function and plotting a couple of cases 
ClearAll[f];
f[x_, t_] :=  E^(-10 (x - 1)^2)
              Piecewise[{{Sin[t/0.001 π], 0 <= t <= 0.001}, 
                         {0, 0.001 < t}}]
Plot[f[x, 0.0004], {x, 0, 2}]
Plot[f[0.9, t], {t, 0, 0.0015}]

This gives what I expect

I then do 
a = Table[f[x, t], {x, 0, 2, 0.1}, {t, 0, 0.0015, 0.0001}];
ListPlot3D[a, PlotRange -> All] 

and this gives what I expect

But when I do 
Plot3D[f[x, t], {x, 0, 2}, {t, 0, 0.0015}, PlotRange -> All]

all I get is an empty box

Investigating I do
b = Reap[Plot3D[Sow[f[x, t]], {x, 0, 2}, {t, 0, 0.0015}, 
    PlotRange -> All]];

b[[1]] gives the same empty box and 
b[[2, 1, 1 ;; 5]]

gives

where the second value is the function. I have checked all the values beyond the first 5 and they are all numbers.
Why can't I Plot3D? Version 10.2 
Thanks

A:

[I intend to close this question as a duplicate shortly, as nearly a full day has passed since Rahul pointed out the main problem; but since I had put together the following code before I found the duplicate, I wanted to share it with the OP. Not wanting to profit unfairly, I've marked this a community-wiki post.]
Rahul pointed out that the problem is with Exclusions:

Apparently the exclusions are swallowing up the whole plot. Add Exclusions -> None and it works fine. – Rahul

The following shows that the interval around a discontinuity is roughly fixed.  As we scale the plot, the gap appear to get narrower due to the scaling, but the numerical difference in the values of t is rougly constant.
GraphicsGrid@Partition[
 plots = Table[
    With[{sc = 2^i},
     Plot3D[{f[x, t/sc]}, {x, 0, 2}, {t, 0, sc 0.0015}, 
      PlotRange -> All, ViewPoint -> {-2.4, 1.3, 2.}]
     ],
    {i, 4, 7}],
  2]

If we extract the values of t from the plots and find the largest gap, we see they are all about 0.0115.
tvals = Sort@
     DeleteDuplicates@
      Cases[#[[1, 1]], {x_Real, t_Real, z_Real} :> t, Infinity] & /@ 
   plots;

(Max@*Differences /@ tvals)
(*  {0.0115164, 0.0116862, 0.0114517, 0.0117392}  *)

The same problem occurs with ParametricPlot3D, but it is more convenient to scale the graph so that the coordinates remain the same.  (The gap around the discontinuity is placed around the input, not around the output.)
With[{sc = 10^3},
 ParametricPlot3D[
  {x, t/sc, f[x, t/sc]},
  {x, 0, 2}, {t, 0, sc 0.0015},
  PlotRange -> All, BoxRatios -> {1, 1, 0.4}, ViewPoint -> {-2.4, 1.3, 2.}]
 ]

Another note: The "discontinuity" in the OP's case is simply detected from Piecewise. In fact, the formulas define a continuous function.  So in that case, Rahul's solution of setting Exclusions -> None is the most appropriate, as well as the easiest, solution.
Plot3D[f[x, t], {x, 0, 2}, {t, 0, 0.0015},
 PlotRange -> All, Exclusions -> None, ViewPoint -> {-2.4, 1.3, 2.}]

