[prev in list] [next in list] [prev in thread] [next in thread]
List: sas-l
Subject: Re: Views and Procs
From: FriedEgg <00000a7c04fef931-dmarc-request () LISTSERV ! UGA ! EDU>
Date: 2020-09-29 17:07:27
Message-ID: 00be01d69683$02959d10$07c0d730$ () verizon ! net
[Download RAW message or body]
This is a multipart message in MIME format.
* input view;
data v_class / view=v_class;
set sashelp.class;
where name ^=: 'A';
run;
* final output table definition;
proc sql;
create table want (
sex char(1) primary key,
_FREQ_ num not null,
min num not null,
max num not null
);
quit;
* output view;
* insert into already existing want table;
* create want2 table;
* create want3 table with hash object;
data want want2 / view=v_out;
length sex $ 1 _FREQ_ min max 8;
declare hash o();
o.definekey('sex');
o.definedata('sex','_FREQ_', 'min', 'max');
o.definedone();
do until(done);
set v_out end=done;
o.add();
output;
end;
o.output(dataset:'want3');
stop;
run;
proc means data=v_class noprint;
class sex;
ways 1;
var height;
output out=v_out(drop=_TYPE_) min=min max=max;
run;
From: Roger DeAngelis [mailto:rogerjdeangelis@gmail.com]
Sent: Saturday, September 26, 2020 5:14 PM
To: Fried Egg <fried.egg@verizon.net>
Cc: SAS-L@LISTSERV.UGA.EDU
Subject: Re: Views and Procs
Hi Fried
I could not get the view to work without a _null_. In addition I could not get a \
_null_ view to work with a hash.
Will experiment later.
Roger
On Sat, Sep 26, 2020 at 12:06 PM Fried Egg \
<00000a7c04fef931-dmarc-request@listserv.uga.edu \
<mailto:00000a7c04fef931-dmarc-request@listserv.uga.edu> > wrote:
It doesn't have to be _null_, you can use the concept to create concrete data sets as \
well. Replace _null_ with a name and see... the makes the hash unnecessary.
_____
From: SAS(r) Discussion <SAS-L@LISTSERV.UGA.EDU <mailto:SAS-L@LISTSERV.UGA.EDU> > on \
behalf of Richard DeVenezia <rdevenezia@GMAIL.COM \
<mailto:rdevenezia@GMAIL.COM> >
Sent: Saturday, September 26, 2020 7:21:18 AM
To: SAS-L@LISTSERV.UGA.EDU <mailto:SAS-L@LISTSERV.UGA.EDU> <SAS-L@LISTSERV.UGA.EDU \
<mailto:SAS-L@LISTSERV.UGA.EDU> >
Subject: Re: Views and Procs
I presume an output view is a data _null_ / view that sets itself.
It's the difference between A) a view that submits a proc, and B) a proc that submits \
a view (colloquially a pumped process flow).
B) Could offer security for proprietary code if a compiled encrypted view can be \
distributed to a group, which in turn is instructed to direct their proc output into \
it
The pumped flow could produce output data set via hash.output(dataset:'<tablename>').
The pumped flow could also pump into another output view via \
hash.output(dataset:'<output-viewname)>')
Example:
-----
data _null_ / view=v_out;
length
sex $ 1 _FREQ_ Height_Min Height_Max 8
something $200
;
set v_out end=end;
if _n_ = 1 then put 'NOTE: ----------' / 'NOTE: V_OUT' / 'NOTE: ----------' / ;
put _all_;
length ;
something = catx(',', of _all_);
if _n_ = 1 then do;
declare hash sneaky();
sneaky.definekey ('_n_');
sneaky.definedata ('sex', '_freq_', 'height_min', 'height_max', 'something');
sneaky.definedone();
end;
sneaky.add();
if end then sneaky.output(dataset:'v_sneaky');
run;
data _null_ / view=v_sneaky;
length
sex $ 1 _FREQ_ Height_Min Height_Max 8
something $200
;
set v_sneaky;
if _n_ = 1 then put 'NOTE: ----------' / 'NOTE: V_SNEAKY' / 'NOTE: ----------' / ;
put _all_;
run;
proc means data=sashelp.class noprint;
class sex;
var Height;
ways 1;
output out=v_out(drop=_TYPE_) min= max= / autoname;
run;
-----
One of the trickiest next things to try might be creating pivot views for transpose \
or array pivoting.
On Fri, Sep 25, 2020 at 1:48 PM FriedEgg \
<00000a7c04fef931-dmarc-request@listserv.uga.edu \
<mailto:00000a7c04fef931-dmarc-request@listserv.uga.edu> > wrote:
>
> Joe pointed out to me that it is much more likely you are referring to this model \
> of "Output" data step view:
>
>
> data _null_ / view=v_out;
>
> length sex $ 1 _FREQ_ Height_Min Height_Max 8;
>
> set v_out;
>
> put _all_;
>
> run;
>
>
>
> proc means data=sashelp.class noprint;
>
> class sex;
>
> var Height;
>
> ways 1;
>
> output out=v_out(drop=_TYPE_) min= max= / autoname;
>
> run;
>
>
>
> This is noted as an ‘experimental' feature in 9.4m6 so usage is production is not \
> recommended, but it is interesting (and potentially, very powerful).
>
>
>
>
> From: FriedEgg [mailto:fried.egg@verizon.net <mailto:fried.egg@verizon.net> ]
> Sent: Friday, September 25, 2020 1:19 PM
> To: 'Randy Herbison' <RandyHerbison@WESTAT.COM <mailto:RandyHerbison@WESTAT.COM> >; \
> 'SAS-L@LISTSERV.UGA.EDU <mailto:SAS-L@LISTSERV.UGA.EDU> ' <SAS-L@LISTSERV.UGA.EDU \
> <mailto:SAS-L@LISTSERV.UGA.EDU> >
> Subject: RE: Views and Procs
>
>
>
> I assume it was doing something dumb like the following. Definitely wouldn't \
> recommend actually doing something like this:
>
>
> data v_classmeans/view=v_classmeans;
>
> length Sex $ 1 _FREQ_ Height_Min Height_Max Weight_Min Weight_Max Height_Mean \
> Weight_Mean 8;
> * avoid uninitialized notes;
>
> call missing(of _all_);
>
> drop rc dsid i;
>
> rc = dosubl("
>
> proc means data=sashelp.class noprint;
>
> class sex;
>
> var height weight;
>
> ways 1;
>
> output out=classmeans(drop=_TYPE_) min= max= mean= / autoname;
>
> run;
>
> ");
>
> link check;
>
> dsid=open("work.classmeans", "i");
>
> link check;
>
> call set (dsid);
>
> do i=1 to 2;
>
> rc=fetchobs(dsid, i);
>
> link check;
>
> output;
>
> end;
>
> rc=close(dsid);
>
> link check;
>
> rc=dosubl("
>
> proc delete data=classmeans;
>
> run;
>
> ");
>
> link check;
>
> stop;
>
>
>
> check:
>
> if (dsid=0 or rc ne 0) then do;
>
> length msg $ 255;
>
> drop msg;
>
> msg=sysmsg();
>
> putlog msg=;
>
> end;
>
> return;
>
> run;
>
>
>
>
>
> From: SAS(r) Discussion [mailto:SAS-L@LISTSERV.UGA.EDU \
> <mailto:SAS-L@LISTSERV.UGA.EDU> ] On Behalf Of Randy Herbison
> Sent: Friday, September 25, 2020 11:14 AM
> To: SAS-L@LISTSERV.UGA.EDU <mailto:SAS-L@LISTSERV.UGA.EDU>
> Subject: Re: Views and Procs
>
>
>
> Vincent,
>
>
>
> I, too, think I remember attending a conference presentation many years ago where \
> the presenter showed some examples. I tried to track it down when I first saw this \
> thread, but was unsuccessful.
>
>
> -Randy
>
>
>
> From: SAS(r) Discussion <SAS-L@LISTSERV.UGA.EDU <mailto:SAS-L@LISTSERV.UGA.EDU> > \
> On Behalf Of Martin, Vincent (STATCAN)
> Sent: Wednesday, September 23, 2020 1:19 PM
> To: SAS-L@LISTSERV.UGA.EDU <mailto:SAS-L@LISTSERV.UGA.EDU>
> Subject: Re: Views and Procs
>
>
>
> CAUTION: External Email *
>
>
>
> Wasn't there a cheeky hidden feature with datastep views that enabled to do \
> something like that for procs. I have a vague memory of a presentation about this \
> several years ago.
>
>
> Vincent Martin
>
>
>
> Senior Methodologist – Statistical Integration Methods Division, Analytical \
> Studies, Methodology and Statistical Infrastructure Field
> Statistics Canada / Government of Canada
>
> vincent.martin@canada.ca <mailto:vincent.martin@canada.ca> / Tel: 613-853-7135
>
>
>
> Méthodologiste principal — Division des méthodes d'intégration statistique, \
> Secteur des études analytiques, de la méthodologie et de l'infrastructure \
> statistique
> Statistique Canada / Gouvernement du Canada
>
> vincent.martin@canada.ca <mailto:vincent.martin@canada.ca> / Tél. : 613-853-7135
>
>
>
> From: SAS(r) Discussion [mailto:SAS-L@LISTSERV.UGA.EDU \
> <mailto:SAS-L@LISTSERV.UGA.EDU> ] On Behalf Of Fried Egg
> Sent: September-23-20 9:22 AM
> To: SAS-L@LISTSERV.UGA.EDU <mailto:SAS-L@LISTSERV.UGA.EDU>
> Subject: Re: Views and Procs
>
>
>
> No, I don't think anyone would recommend using it. I haven't in several years and \
> had definitely had issues with it not supporting basic things all other methods do \
> (though I can't remember specifics)
>
>
> ________________________________
>
> From: SAS(r) Discussion <SAS-L@LISTSERV.UGA.EDU <mailto:SAS-L@LISTSERV.UGA.EDU> > \
> on behalf of Quentin McMullen <qmcmullen.sas@GMAIL.COM \
> <mailto:qmcmullen.sas@GMAIL.COM> >
> Sent: Wednesday, September 23, 2020 9:10:52 AM
> To: SAS-L@LISTSERV.UGA.EDU <mailto:SAS-L@LISTSERV.UGA.EDU> <SAS-L@LISTSERV.UGA.EDU \
> <mailto:SAS-L@LISTSERV.UGA.EDU> >
> Subject: Re: Views and Procs
>
>
>
> I've never even heard of PROC ACCESS.
>
> The docs says it's a legacy PROC.
>
> Are there situations where it's handy to use, rather than DATA step / SQL / FedSQL \
> ?
> --Q.
>
>
> On Wed, 23 Sep 2020 13:04:00 +0000, Fried Egg <fried.egg@VERIZON.NET \
> <mailto:fried.egg@VERIZON.NET> > wrote:
> > Not sure if this is an exhaustive list, but here are the methods I�m familiar \
> > with:
> > data step
> > proc sql
> > proc fedsql
> > proc access
> >
> >
> > proc cas also can create views... but fairly sure that�s outside the scope of \
> > the question.
> >
> > ________________________________
> > From: SAS(r) Discussion <SAS-L@LISTSERV.UGA.EDU <mailto:SAS-L@LISTSERV.UGA.EDU> > \
> > on behalf of Allan Bowe <allnbowe@GMAIL.COM \
> > <mailto:allnbowe@GMAIL.COM> >
> > Sent: Wednesday, September 23, 2020 8:09:17 AM
> > To: SAS-L@LISTSERV.UGA.EDU <mailto:SAS-L@LISTSERV.UGA.EDU> \
> > <SAS-L@LISTSERV.UGA.EDU <mailto:SAS-L@LISTSERV.UGA.EDU> >
> > Subject: Re: Views and Procs
> >
> > I�m confident you know this but for the benefit of other readers, the data step \
> > is a powerful view creator
> > On Wed, 23 Sep 2020 at 05:41, Alan Churchill <savian.net@gmail.com \
> > <mailto:savian.net@gmail.com> <mailto:savian.net@gmail.com \
> > <mailto:savian.net@gmail.com> >> wrote:
> > Guys,
> >
> >
> >
> > I have a general question (that I am pretty sure about, we will see).
> >
> >
> >
> > Can any proc other than SQL create a view? In other words, can a proc create a \
> > view and defer processing? I don�t think so and it kind of flies in the face of \
> > a proc but wanted to confirm.
> >
> >
> > Thanks,
> >
> > Alan
> >
> > Savian
> >
> >
> >
>
> * Please use caution when responding and/or clicking on links as this email \
> originated from outside of Westat.
[Attachment #3 (text/html)]
<html xmlns:v="urn:schemas-microsoft-com:vml" \
xmlns:o="urn:schemas-microsoft-com:office:office" \
xmlns:w="urn:schemas-microsoft-com:office:word" \
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" \
xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type \
content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 \
(filtered medium)"><!--[if !mso]><style>v\:* {behavior:url(#default#VML);} o\:* \
{behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
span.EmailStyle17
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:#1F497D;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple><div \
class=WordSection1><p class=MsoNormal style='text-autospace:none'><span \
style='font-size:10.0pt;font-family:"Courier New";color:green;background:white'>* \
input view;</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'><o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><b><span style='font-size:10.0pt;font-family:"Courier \
New";color:navy;background:white'>data</span></b><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
v_class / </span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>view</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>=v_class;<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> </span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>set</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
sashelp.class;<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> </span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>where</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> name \
^=: </span><span style='font-size:10.0pt;font-family:"Courier \
New";color:purple;background:white'>'A'</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>;<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><b><span style='font-size:10.0pt;font-family:"Courier \
New";color:navy;background:white'>run</span></b><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>;<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'><o:p> </o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:green;background:white'>* final output table definition;</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'><o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><b><span style='font-size:10.0pt;font-family:"Courier \
New";color:navy;background:white'>proc</span></b><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
</span><b><span style='font-size:10.0pt;font-family:"Courier \
New";color:navy;background:white'>sql</span></b><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>;<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> </span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>create</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>table</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> want \
(<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
sex </span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>char</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>(</span><b><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:teal;background:white'>1</span></b><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'>) \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>primary</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>key</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>,<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> _FREQ_ </span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>num</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>not</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>null</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>,<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> min </span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>num</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>not</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>null</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>,<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> max </span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>num</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>not</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>null</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'><o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> );<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><b><span style='font-size:10.0pt;font-family:"Courier \
New";color:navy;background:white'>quit</span></b><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>;<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'><o:p> </o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:green;background:white'>* output view;</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'><o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:green;background:white'>* insert into already existing want \
table;</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'><o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:green;background:white'>* create want2 table;</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'><o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:green;background:white'>* create want3 table with hash object;</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'><o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><b><span style='font-size:10.0pt;font-family:"Courier \
New";color:navy;background:white'>data</span></b><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> want \
want2 / </span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>view</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>=v_out;<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> </span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>length</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> sex \
$ </span><b><span style='font-size:10.0pt;font-family:"Courier \
New";color:teal;background:white'>1</span></b><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
_FREQ_ min max </span><b><span style='font-size:10.0pt;font-family:"Courier \
New";color:teal;background:white'>8</span></b><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>;<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'><o:p> </o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> </span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>declare</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>hash</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
o();<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
o.definekey(</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:purple;background:white'>'sex'</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>);<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> o.definedata(</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:purple;background:white'>'sex'</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>,</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:purple;background:white'>'_FREQ_'</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'>, \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:purple;background:white'>'min'</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'>, \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:purple;background:white'>'max'</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>);<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> o.definedone();<o:p></o:p></span></p><p \
class=MsoNormal style='text-autospace:none'><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'><o:p> </o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> </span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>do</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
</span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>until</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>(done);<o:p></o:p></span></p><p class=MsoNormal \
style='text-autospace:none'><span style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'> </span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>set</span><span \
style='font-size:10.0pt;font-family:"Courier New";color:black;background:white'> \
v_out </span><span style='font-size:10.0pt;font-family:"Courier \
New";color:blue;background:white'>end</span><span \
style='font-size:10.0pt;font-family:"Courier \
New";color:black;background:white'>=done;<o:p></o:p></span></p><p class=MsoNormal \
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic