q = new query() q.sql = 'select * from whatever' q.active = true f = new file() f.create('special_csv.csv') cLine = '' for n = 1 to q.rowset.fields.size cLine += '"'+q.rowset.fields[n].fieldname+'",' next cLine = substr(cLine,1,len(cLine)-1) //drop last comma f.puts(cLine) do while not q.rowset.endofset cLine = '' for n = 1 to q.rowset.fields.size if q.rowset.fields[n].type = 'N' cLine += "'"+iif(empty(q.rowset.fields[n].value),0,q.rowset.fields[n].value)+"'," elseif q.rowset.fields[n].type = 'C' or q.rowset.fields[n].type = 'M' cLine += '"'+iif(empty(q.rowset.fields[n].value),space(1),trim(q.rowset.fields[n].value))+'",' else //deal with other field types endif next cLine = substr(cLine,1,len(cLine)-1) //drop last comma f.puts(cLine) q.rowset.next() enddo f.close() q.active = false