C
Craig Hornish
Is it possible to assign a crosstab as a recordsource through code?
I have tried using the code below but get the error
"Cannot use the crosstab of a non-Fixed column as a subquery"
When the recordsource is assigned as the named query it works.
Thank you
Craig Hornish
strSQL = "PARAMETERS [Forms]![frmReportControl]![txtYear] Text ( 255 ),
[Forms]![frmReportControl]![cmbReportID] Long; " & _
"TRANSFORM Sum(tmakOrderHistLine.QTY_SHIPPED) AS [Sum Shipped] " & _
"SELECT tblReports.ReportName, 'A' AS HoldPlace, tmakOrderHistLine.CUSTOMER,
tmakOrderHistHead.CUSTOMER_SHIP, tmakOrderHistLine.DATE_SHIPPED,
tmakOrderHistLine.CITY_SHIP, tmakOrderHistLine.STATE_SHIP,
tmakOrderHistHead.CUSTOMER_PO, tmakOrderHistLine.ORDER_NO, 'B' AS Col10 " &
_
"FROM tblReports INNER JOIN (tblReportDetails LEFT JOIN (tmakOrderHistLine
LEFT JOIN tmakOrderHistHead ON (tmakOrderHistLine.ORDER_SUFFIX =
tmakOrderHistHead.ORDER_SUFFIX) AND (tmakOrderHistLine.ORDER_NO =
tmakOrderHistHead.ORDER_NO) AND (tmakOrderHistLine.INVOICE =
tmakOrderHistHead.INVOICE)) ON tblReportDetails.PartID =
tmakOrderHistLine.PART) ON tblReports.ReportID = tblReportDetails.ReportID "
& _
"WHERE (((tblReportDetails.ReportID) =
[Forms]![frmReportControl]![cmbReportID]) And
((Left([tmakOrderHistLine]![DATE_SHIPPED], 4)) =
[Forms]![frmReportControl]![txtYear] Or
(Left([tmakOrderHistLine]![DATE_SHIPPED], 4)) Is Null) And
((tmakOrderHistLine.FLAG_BOM) = 'Y' Or (tmakOrderHistLine.FLAG_BOM) = 'N' Or
(tmakOrderHistLine.FLAG_BOM) = ' ' Or (tmakOrderHistLine.FLAG_BOM) Is Null)
And ((tmakOrderHistLine.ITEM_SORTKEY) <> 'EXCEPTION' Or
(tmakOrderHistLine.ITEM_SORTKEY) Is Null)) " & _
"GROUP BY tblReports.ReportName, 'A', tmakOrderHistLine.CUSTOMER,
tmakOrderHistHead.CUSTOMER_SHIP, tmakOrderHistLine.DATE_SHIPPED,
tmakOrderHistLine.CITY_SHIP, tmakOrderHistLine.STATE_SHIP,
tmakOrderHistHead.CUSTOMER_PO, tmakOrderHistLine.ORDER_NO, 'B' " & _
"PIVOT tblReportDetails.Part;"
'"ORDER BY tmakOrderHistLine.CUSTOMER, tmakOrderHistHead.CUSTOMER_SHIP " & _
Me.RecordSource = strSQL
I have tried using the code below but get the error
"Cannot use the crosstab of a non-Fixed column as a subquery"
When the recordsource is assigned as the named query it works.
Thank you
Craig Hornish
strSQL = "PARAMETERS [Forms]![frmReportControl]![txtYear] Text ( 255 ),
[Forms]![frmReportControl]![cmbReportID] Long; " & _
"TRANSFORM Sum(tmakOrderHistLine.QTY_SHIPPED) AS [Sum Shipped] " & _
"SELECT tblReports.ReportName, 'A' AS HoldPlace, tmakOrderHistLine.CUSTOMER,
tmakOrderHistHead.CUSTOMER_SHIP, tmakOrderHistLine.DATE_SHIPPED,
tmakOrderHistLine.CITY_SHIP, tmakOrderHistLine.STATE_SHIP,
tmakOrderHistHead.CUSTOMER_PO, tmakOrderHistLine.ORDER_NO, 'B' AS Col10 " &
_
"FROM tblReports INNER JOIN (tblReportDetails LEFT JOIN (tmakOrderHistLine
LEFT JOIN tmakOrderHistHead ON (tmakOrderHistLine.ORDER_SUFFIX =
tmakOrderHistHead.ORDER_SUFFIX) AND (tmakOrderHistLine.ORDER_NO =
tmakOrderHistHead.ORDER_NO) AND (tmakOrderHistLine.INVOICE =
tmakOrderHistHead.INVOICE)) ON tblReportDetails.PartID =
tmakOrderHistLine.PART) ON tblReports.ReportID = tblReportDetails.ReportID "
& _
"WHERE (((tblReportDetails.ReportID) =
[Forms]![frmReportControl]![cmbReportID]) And
((Left([tmakOrderHistLine]![DATE_SHIPPED], 4)) =
[Forms]![frmReportControl]![txtYear] Or
(Left([tmakOrderHistLine]![DATE_SHIPPED], 4)) Is Null) And
((tmakOrderHistLine.FLAG_BOM) = 'Y' Or (tmakOrderHistLine.FLAG_BOM) = 'N' Or
(tmakOrderHistLine.FLAG_BOM) = ' ' Or (tmakOrderHistLine.FLAG_BOM) Is Null)
And ((tmakOrderHistLine.ITEM_SORTKEY) <> 'EXCEPTION' Or
(tmakOrderHistLine.ITEM_SORTKEY) Is Null)) " & _
"GROUP BY tblReports.ReportName, 'A', tmakOrderHistLine.CUSTOMER,
tmakOrderHistHead.CUSTOMER_SHIP, tmakOrderHistLine.DATE_SHIPPED,
tmakOrderHistLine.CITY_SHIP, tmakOrderHistLine.STATE_SHIP,
tmakOrderHistHead.CUSTOMER_PO, tmakOrderHistLine.ORDER_NO, 'B' " & _
"PIVOT tblReportDetails.Part;"
'"ORDER BY tmakOrderHistLine.CUSTOMER, tmakOrderHistHead.CUSTOMER_SHIP " & _
Me.RecordSource = strSQL