Link to home
Start Free TrialLog in
Avatar of kelsanit
kelsanit

asked on

Crystal reports - SQL Command add field

have the following SQL Comman where the SmsnMaster.SalesRepName does not appear as a field name in Crystal. When I try and add to the select statement it tells me it could not be bound.



WITH Orders (TakenBy, InvoiceDate, PlacedBy,District,OrderNumber,OutsideSalesRep,SalesRepName)
AS
(
    SELECT "OrderHeaderMaster"."TakenBy",
           "OrderHeaderMaster"."InvoiceDate",
           "OrderHeaderMaster"."PlacedBy",
           "SmsnMaster"."District",
           "OrderHeaderMaster"."OrderNumber",
           "CustomerMaster"."OutsideSalesRep",
           "SmsnMaster"."SalesRepName"
    FROM   "ksdb_eff"."dbo"."OrderHeaderMaster" "OrderHeaderMaster"
           INNER JOIN (
                    "ksdb_eff"."dbo"."SmsnMaster" "SmsnMaster" INNER JOIN
                    "ksdb_eff"."dbo"."CustomerMaster" "CustomerMaster" ON
                    "SmsnMaster"."SalesRepNumber" = "CustomerMaster"."OutsideSalesRep"
                )
                ON  "OrderHeaderMaster"."CustomerNumber" = "CustomerMaster"."CustomerNumber"
    WHERE  NOT (
               "SmsnMaster"."District" = 'krystal'
               OR "SmsnMaster"."District" = 'no manager'
           )
           AND "OrderHeaderMaster"."InvoiceDate" >= {ts '2011-08-02 00:00:00'}
           AND "SmsnMaster"."SalesRepName" <> 'available'
)

SELECT tm.OutsideSalesRep,tm.Orders AS TMOrders,onln.Orders AS OnlineOrders, convert(decimal(10,4),isnull(onln.Orders,0))/convert(decimal(10,4),tm.Orders)  AS BIZcPr


FROM (
                  SELECT o.OutsideSalesRep,COUNT(*) as Orders
                  FROM Orders o
                  GROUP BY  o.OutsideSalesRep
                  ) tm
      LEFT JOIN (
                                          SELECT oo.OutsideSalesRep, COUNT(*) AS Orders
                                          FROM Orders oo
                                          WHERE TakenBy = 'WWW'
                                          GROUP BY oo.OutsideSalesRep

) onln ON tm.OutsideSalesRep = onln.OutsideSalesRep;

Avatar of kelsanit
kelsanit

ASKER

I also need the District as a filed to pull into the report.
ASKER CERTIFIED SOLUTION
Avatar of Mike McCracken
Mike McCracken

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
when i use the select query above it give me the following message now.

Orders.SalesRepName is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause