'
'----------------------------
'--- creation information ---
'----------------------------
'
'Name: simpleave.ave
'Version: 1.0
'Date: 03/09/97
'Author: Ferdi Hellweger
'        Center for Research in Water Resources
'        The University of Texas at Austin
'        ferdi@crwr.utexas.edu
'        www.ce.utexas.edu/stu/ferdi/
'
'---------------------------
'--- purpose/description ---
'---------------------------
'
'This is a simple averaging utility for sample data.
'
'-----------------
'--- get table ---
'-----------------
'
intable = av.getactivedoc
'
'--------------------
'--- set up table ---
'--------------------
'
invtab = intable.getvtab
insegidf = invtab.findfield("segid")
inmsmtf = invtab.findfield("msmt")
'
'---------------------------
'--- set up output table ---
'---------------------------
'
outfilenamestring = msgbox.input("Output file name", "WARDIMP", "c:\warddata\wqsalsur3s.dbf")
outfilename = filename.make(outfilenamestring)
outvtab = vtab.makenew(outfilename, dBASE)
outfields = list.make
outsegidf = field.make("segid", #FIELD_CHAR, 4, 0)
outavef = field.make("ave", #FIELD_DECIMAL, 16, 4)
outnvalf = field.make("nval", #FIELD_DECIMAL, 16, 4)
outfields = outfields.add(outsegidf)
outfields = outfields.add(outavef)
outfields = outfields.add(outnvalf)
outvtab.addfields(outfields)
outvtab.seteditable(true)
'
'--------------------
'--- process data ---
'--------------------
'
'
nval = 0
totmsmt = 0
thissegid = invtab.returnvalue(insegidf, 0)
for each inrec in invtab
    insegid = invtab.returnvalue(insegidf, inrec)
    inmsmt = invtab.returnvalue(inmsmtf, inrec)
    if (thissegid <> insegid) then
        ave = totmsmt.clone / nval.clone
'        message = "thissegid = " + thissegid.asstring
'        message = message + nl + "insegid = " + insegid.asstring
'        message = message + nl + "nval = " + nval.asstring
'        message = message + nl + "totweight = " + totweight.asstring
'        message = message + nl + "tottime = " + tottime.asstring
'        message = message + nl + "ave = " + ave.asstring
'        keepgoing = msgbox.yesno(message, "WARDIMP", true)
'        if (not keepgoing) then
'            exit
'        end
        outrec = outvtab.addrecord
        outvtab.setvalue(outsegidf, outrec, thissegid.clone)
        outvtab.setvalue(outavef, outrec, ave.clone)
        outvtab.setvalue(outnvalf, outrec, nval.clone)
        nval = 0
        totmsmt = 0
        thissegid = insegid.clone
    end
    nval = nval.clone + 1
    totmsmt = totmsmt.clone + inmsmt.clone
end
'
'close up
'
msgbox.info("Averages calculated", "WARDIMP")
'
'end
'