Hi, I'm using Delphi 2007 and dBase files. I am creating a .csv file. I need to sort my file by RailType and OrderDate. The resultant .csv shows RailType is in alpha order and OrderDate is in "string" order; namely, the sort is on the month part of the date ( 12/2/2010) that is the 12. So I'm getting 1/6/2011 before 12/6/2010. I need to have last year's dates appear before this years dates. Hope that makes sense. When I'm debugging, if I remember correctly, the date appears as a numeral. Would the numeral representation for 12/6/2010 be smaller than the numeral for 1/6/2011. If so could I somehow use that for sorting (ordering in the query)? Thanks so much for your thoughts. Charlie
I am creating a .csv file as follows: FilePath := ExtractFilePath(Application.EXEName); if FilePath[Length(FilePath)] <> '\' then FilePath := FilePath + '\'; FilePath := FilePath + 'csv\'; ForceDirectories(FilePath); AssignFile(F, FilePath + Format('%s.csv',['Item Size List '+sDate])); Rewrite(F); Writeln(F, Format ('%s,%s,%s,%s,%s,%s,%s,%s,%s', ['WIP #', 'Dealer', 'Customer', 'Order Date', 'Invoice Date', 'Item', 'Width', 'Depth', 'Rail' ])); qItems.First; {2011.6.1 changed Price to Rail above and sPrice to qItemsRailType.AsString below} rcount := qItems.RecordCount; for I := 0 to rcount - 1 do begin for j := 1 to length (sLoc) do if ( sLoc[j] = ',' ) then sLoc[j] := #32; sInvDate := ''; sPrice := Format('%2.2f',[qItemsPrice.AsFloat]); Writeln(F, Format ('%s,%s,%s,%s,%s,%s,%s,%s,%s', [ qItemsDBANumber.AsString, qItemsCustomer.AsString, qItemsDealer.AsString, DateToStr(qItemsOrderDate.Value), sInvDate, qItemsItem.AsString, qItemsMMWidth.AsString, qItemsMMDepth.AsString, qItemsRailType.AsString ])); qItems.Next; end; //DateToStr(qItemsCompDate.Value), CloseFile(F); My query is: Select oe.DBANumber, oe.CompDate, oe.OrderDate, oe.Type, gendet.Dealer, gendet.Customer, gendet.Item, gendet.MMWidth, gendet.MMDepth, gendet.Price, gendet.RailType From oe inner join gendet on oe.number = gendet.number where Trim(oe.ID) =:sID and oe.CompDate is null and oe.OrderDate between :Beg_Date and :End_Date and oe.Type not in ("C","I","Q") Order by gendet.RailType, oe.OrderDate _______________________________________________ NZ Borland Developers Group - Delphi mailing list Post: delphi@delphi.org.nz Admin: http://delphi.org.nz/mailman/listinfo/delphi Unsubscribe: send an email to delphi-requ...@delphi.org.nz with Subject: unsubscribe