Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down on April 23, and its replacement, statalist.org is already up and running.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: st: ado file


From   tashi lama <ltashi32@hotmail.com>
To   <statalist@hsphsun2.harvard.edu>
Subject   RE: st: ado file
Date   Mon, 13 Aug 2012 16:59:56 +0000

Makes sense..Thanx 
----------------------------------------
> Date: Mon, 13 Aug 2012 17:13:52 +0100
> Subject: Re: st: ado file
> From: njcoxstata@gmail.com
> To: statalist@hsphsun2.harvard.edu
>
> In your case, what is important is the difference between the program
> and the .ado file that defines it.
>
> 1. First time you type -dd-, Stata looks for a command -dd- that it
> knows about, doesn't find one, but does find an .ado file -dd.ado-. So
> it runs -dd.ado- and what happens is that
>
> clear
>
> Data are -clear-ed.
>
> program dd
> ...
> end
>
> Program -dd- is defined to Stata.
>
> 2. Second time you type -dd, Stata looks for a command -dd- that it
> knows about, but this time it does find one. You just defined -dd- by
> a series of commands starting with -program- and ending with -end-.
> But this time there is no -clear-.
>
> There are at least two takes on what you could do. One is that you
> could revise your program -dd- so that -clear- is included in the
> program.
>
> Another is that this is an example of premature programming, defined
> as writing a program that isn't needed. There is almost no generality
> in your program and it might as well be a do-file with arguments. But
> then again there is no harm done either.
>
> Nick
>
> On Mon, Aug 13, 2012 at 4:48 PM, tashi lama <ltashi32@hotmail.com> wrote:
> >
> > I am writing a simple ado-file where I am generating a dataset using sql query and listing the variable using syntax command. Here is my code
> > clear
> > program dd
> > qui odbc query indigo_dev71
> > odbc load, exec("select date(read_date) as date, count(*) as hits from readership where source_id=6429 and date(read_date) between '2011-01-01' and '2011-01-20' group by date(read_date)")
> > syntax [varlist]
> > list `varlist'
> > end
> > exit
> >
> > when I execute ado file .dd date hits
> > date hits |
> > |------------------|
> > 1. | 01jan2011 127 |
> > 2. | 02jan2011 315 |
> > 3. | 03jan2011 4438 |
> > 4. | 04jan2011 3978 |
> > 5. | 05jan2011 3896 |
> > |------------------|
> > 6. | 06jan2011 4981 |
> > 7. | 07jan2011 4310 |
> > 8. | 08jan2011 540 |
> > 9. | 09jan2011 567 |
> > 10. | 10jan2011 5572 |
> > |------------------|
> > 11. | 11jan2011 4261 |
> > 12. | 12jan2011 4184 |
> > 13. | 13jan2011 4218 |
> > 14. | 14jan2011 4894 |
> > 15. | 15jan2011 1113 |
> > |------------------|
> > 16. | 16jan2011 343 |
> > 17. | 17jan2011 1154 |
> > 18. | 18jan2011 3981 |
> > 19. | 19jan2011 5669 |
> > 20. | 20jan2011 3685 |
> >
> > Great. But when I run second time .dd date
> > Stata returns you must start with an empty dataset. I have a "clear" command at the top of my adofile to start with a fresh memory. Could someone please explain? Also, does adofile name have to be identical to the program name? Meaning, my program name here is dd. Do I have to have a adofile dd.ado? If they could be different, how do I execute?
>
> *
> * For searches and help try:
> * http://www.stata.com/help.cgi?search
> * http://www.stata.com/support/statalist/faq
> * http://www.ats.ucla.edu/stat/stata/ 		 	   		  
*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/


© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index