I have another related query on generating lagged variables.
My regression model looks like this: Investment (t) = %Sales_growth (t-1). In other words I am regressing investment at time (t) against the sales growth in time (t-1) i.e. the % difference between sales from time t-3 to t-2.
First thing first, I want to create this lagged sales variable i.e. %Sales_growth (t-1). My sample data looks like this. Please help me in generating this percentage lagged variable. Many thanks.

Code:
* Example generated by -dataex-. To install: ssc install dataex
clear
input str13 firmid int time float(sales investment)
"AA/ LN Equity" 2014     984         .
"AA/ LN Equity" 2015     935  .0367722
"AA/ LN Equity" 2016     933 -.0252055
"AA/ LN Equity" 2017     960  .0231823
"AAL LN Equity" 2005   29434         .
"AAL LN Equity" 2006   24991  .0419541
"AAL LN Equity" 2007   25470  .1212917
"AAL LN Equity" 2008   26311  .2453867
"AAL LN Equity" 2009   20858  .0799992
"AAL LN Equity" 2010   27960  .0526746
"AAL LN Equity" 2011   30580  .0851836
"AAL LN Equity" 2012   28680  .1491262
"AAL LN Equity" 2013   29342  .0795582
"AAL LN Equity" 2014   27073  .0848872
"AAL LN Equity" 2015   20455  .0369792
"AAL LN Equity" 2016   21378  .0187261
"AAL LN Equity" 2017   26243  .0466211
"AAL LN Equity" 2018   27610  .0609226
"ABF LN Equity" 2005    5622         .
"ABF LN Equity" 2006    5996      .125
"ABF LN Equity" 2007    6800  .0767098
"ABF LN Equity" 2008    8235  .0924069
"ABF LN Equity" 2009    9255  .0885781
"ABF LN Equity" 2010   10167  .0813683
"ABF LN Equity" 2011   11065  .0915159
"ABF LN Equity" 2012   12252  .0744952
"ABF LN Equity" 2013   13315  .0628906
"ABF LN Equity" 2014   12943  .0665124
"ABF LN Equity" 2015   12800  .0567227
"ABF LN Equity" 2016   13399  .0776006
"ABF LN Equity" 2017   15357  .0385021
"ABF LN Equity" 2018   15574  .0778298
"ACA LN Equity" 2010 975.021         .
"ACA LN Equity" 2011 1217.92  .0927895
"ACA LN Equity" 2012 1011.74  .1034879
"ACA LN Equity" 2013 929.004  .1120461
"ACA LN Equity" 2014 930.248  .1062158
"ACA LN Equity" 2015 868.131  .0747158
"ACA LN Equity" 2016 1053.53  .0852371
"ACA LN Equity" 2017 751.515  .0628966
"ADM LN Equity" 2007 364.134         .
"ADM LN Equity" 2008 422.806  .0130009
"ADM LN Equity" 2009   507.5   .011637
"ADM LN Equity" 2010   640.8  .0094276
"ADM LN Equity" 2011   870.3  .0095093
"ADM LN Equity" 2012   984.3  .0041684
"ADM LN Equity" 2013   924.4  .0031521
"ADM LN Equity" 2014   884.6  .0145662
"ADM LN Equity" 2015   904.8  .0123275
"ADM LN Equity" 2016  1016.8  .0075195
"ADM LN Equity" 2017  1128.9    .00467
"ADM LN Equity" 2018  1265.2  .0040791
"ADN LN Equity" 2007 347.843         .
"ADN LN Equity" 2008 430.086  .0797848
"ADN LN Equity" 2009 421.897   -.01243
"ADN LN Equity" 2010   638.2  .0314421
"ADN LN Equity" 2011     784  .0029238
"ADN LN Equity" 2012   869.2  .0026331
"ADN LN Equity" 2013  1078.5  .0223265
"ADN LN Equity" 2014  1117.6 -.0136599
"ADN LN Equity" 2015    1169  .0250423
"ADN LN Equity" 2016  1007.1  .0116181
end