Wrox Home  
Search P2P Archive for: Go

  Return to Index  

access thread: Re: Access Project report


Message #1 by "Mavin Specimen" <mspecimen@h...> on Tue, 09 Oct 2001 11:49:14







I am using an Access Project and I want to be able to open the report without that input box appearing and asking for the parameter
value. I created code, but apparantly the parameter value is not going through. Here is the code I use and I will also supply the
stored procedure syntax I use.



Any help would be appreciated.



Private Sub Report_Open(Cancel As Integer)

On Error Resume Next

Dim objConn As New ADODB.Connection

Dim objCmd As New ADODB.Command

Dim objParm As ADODB.Parameter

'establish a connection



Set objConn = CurrentProject.Connection     



'set the Command object properties

objCmd.ActiveConnection = objConn   



objCmd.CommandText = "up_selProdCode"

objCmd.CommandType = adCmdStoredProc

Set objParm = objCmd.CreateParameter("PC", adVarChar, adParamInput, 255, "PAL - 118 - 1500 - Q - DE - RC - IY - AB - 120 - None") 



objCmd.Parameters.Append objParm

Set objCmd = Nothing

objConn.Close

Set objConn = Nothing

End Sub



Here is the stored procedure:



Alter Procedure up_selProdCode (@PC nvarchar(255))



 



As



SELECT tbl_cfgProductCodes.ProductCode, tbl_cfgProductCodes.LightTypeID, tbl_ColumnNames.ColumnName AS C1, tbl_Column01.Description
AS D1, tbl_ColumnNames_1.ColumnName AS C2, tbl_Column02.Description AS D2, tbl_ColumnNames_2.ColumnName AS C3,
tbl_Column03.Description AS D3, tbl_ColumnNames_3.ColumnName AS C4, tbl_Column04.Description AS D4, tbl_ColumnNames_4.ColumnName AS
C5, tbl_Column05.Description AS D5, tbl_ColumnNames_5.ColumnName AS C6, tbl_Column06.Description AS D6, tbl_ColumnNames_6.ColumnName
AS C7, tbl_Column07.Description AS D7, tbl_ColumnNames_7.ColumnName AS C8, tbl_Column08.Description AS D8,
tbl_ColumnNames_8.ColumnName AS C9, tbl_Column09.Description AS D9, tbl_ColumnNames_9.ColumnName AS C10, tbl_Column10.Description AS
D10, tbl_ColumnNames_10.ColumnName AS C11, tbl_Column11.Description AS D11



 



FROM tbl_ColumnNames AS tbl_ColumnNames_10 RIGHT JOIN (tbl_ColumnNames AS tbl_ColumnNames_9 RIGHT JOIN (tbl_ColumnNames AS
tbl_ColumnNames_8 RIGHT JOIN (tbl_ColumnNames AS tbl_ColumnNames_7 RIGHT JOIN (tbl_ColumnNames AS tbl_ColumnNames_6 RIGHT JOIN
(tbl_ColumnNames AS tbl_ColumnNames_5 RIGHT JOIN (tbl_ColumnNames AS tbl_ColumnNames_4 RIGHT JOIN (tbl_ColumnNames AS
tbl_ColumnNames_3 RIGHT JOIN (tbl_ColumnNames AS tbl_ColumnNames_2 RIGHT JOIN (tbl_ColumnNames AS tbl_ColumnNames_1 RIGHT JOIN
(tbl_ColumnNames RIGHT JOIN (((((((((((tbl_cfgProductCodes LEFT JOIN tbl_Column01 ON tbl_cfgProductCodes.Column01Abrv =
tbl_Column01.Column01Abrv) LEFT JOIN tbl_Column02 ON tbl_cfgProductCodes.Column02Abrv = tbl_Column02.Column02Abrv) LEFT JOIN
tbl_Column03 ON tbl_cfgProductCodes.Column03Abrv = tbl_Column03.Column03Abrv) LEFT JOIN tbl_Column04 ON
tbl_cfgProductCodes.Column04Abrv = tbl_Column04.Column04Abrv) LEFT JOIN tbl_Column05 ON tbl_cfgProductCodes.Column05Abrv =
tbl_Column05.Column05Abrv) LEFT JOIN tbl_Column06 ON tbl_cfgProductCodes.Column06Abrv = tbl_Column06.Column06Abrv) LEFT JOIN
tbl_Column07 ON tbl_cfgProductCodes.Column07Abrv = tbl_Column07.Column07Abrv) LEFT JOIN tbl_Column08 ON
tbl_cfgProductCodes.Column08Abrv = tbl_Column08.Column08Abrv) LEFT JOIN tbl_Column09 ON tbl_cfgProductCodes.Column09Abrv =
tbl_Column09.Column09Abrv) LEFT JOIN tbl_Column10 ON tbl_cfgProductCodes.Column10Abrv = tbl_Column10.Column10Abrv) LEFT JOIN
tbl_Column11 ON tbl_cfgProductCodes.Column11Abrv = tbl_Column11.Column11Abrv) ON tbl_ColumnNames.ColumnNameID =
tbl_Column01.ColumnNameID) ON tbl_ColumnNames_1.ColumnNameID = tbl_Column02.ColumnNameID) ON tbl_ColumnNames_2.ColumnNameID =
tbl_Column03.ColumnNameID) ON tbl_ColumnNames_3.ColumnNameID = tbl_Column04.ColumnNameID) ON tbl_ColumnNames_4.ColumnNameID =
tbl_Column05.ColumnNameID) ON tbl_ColumnNames_5.ColumnNameID = tbl_Column06.ColumnNameID) ON tbl_ColumnNames_6.ColumnNameID =
tbl_Column07.ColumnNameID) ON tbl_ColumnNames_7.ColumnNameID = tbl_Column08.ColumnNameID) ON tbl_ColumnNames_8.ColumnNameID =
tbl_Column09.ColumnNameID) ON tbl_ColumnNames_9.ColumnNameID = tbl_Column10.ColumnNameID) ON tbl_ColumnNames_10.ColumnNameID =
tbl_Column11.ColumnNameID



 



WHERE (tbl_cfgProductCodes.ProductCode = @PC)



Message #2 by brian.skelton@b... on Tue, 9 Oct 2001 22:22:25
hi Mavin



You seem to be creating your command object, adding a parameter to it, but 

hen destroying the command object before you've done anything with it. Try 

this (I'm sure that it would work for a form, but reports can be tricky 

things...)



 Private Sub Report_Open(Cancel As Integer)

 On Error Resume Next

 Dim objConn As New ADODB.Connection

 Dim objCmd As New ADODB.Command

 Dim objParm As ADODB.Parameter

 'establish a connection

 

 Set objConn = CurrentProject.Connection     

 

 'set the Command object properties

 objCmd.ActiveConnection = objConn   

 

 objCmd.CommandText = "up_selProdCode"

 objCmd.CommandType = adCmdStoredProc

 Set objParm = objCmd.CreateParameter("PC", adVarChar, adParamInput, 

255, "PAL - 118 - 1500 - Q - DE - RC - IY - AB - 120 - None") 

 

 objCmd.Parameters.Append objParm



 'NEW CODE HERE

 Set Me.RecordSource = objCmd.Execute



 Set objCmd = Nothing

 objConn.Close

 Set objConn = Nothing

 End Sub





> 

> 

> 

> 

> I am using an Access Project and I want to be able to open the report 

without that input box appearing and asking for the parameter value. I 

created code, but apparantly the parameter value is not going through. 

Here is the code I use and I will also supply the stored procedure syntax 

I use.

> 

> Any help would be appreciated.

> 

> Private Sub Report_Open(Cancel As Integer)

> On Error Resume Next

> Dim objConn As New ADODB.Connection

> Dim objCmd As New ADODB.Command

> Dim objParm As ADODB.Parameter

> 'establish a connection

> 

> Set objConn = CurrentProject.Connection     

> 

> 'set the Command object properties

> objCmd.ActiveConnection = objConn   

> 

> objCmd.CommandText = "up_selProdCode"

> objCmd.CommandType = adCmdStoredProc

> Set objParm = objCmd.CreateParameter("PC", adVarChar, adParamInput, 

255, "PAL - 118 - 1500 - Q - DE - RC - IY - AB - 120 - None") 

> 

> objCmd.Parameters.Append objParm

> Set objCmd = Nothing

> objConn.Close

> Set objConn = Nothing

> End Sub

> 

> Here is the stored procedure:

> 

> Alter Procedure up_selProdCode (@PC nvarchar(255))

> 

>  

> 

> As

> 

> SELECT tbl_cfgProductCodes.ProductCode, tbl_cfgProductCodes.LightTypeID, 

tbl_ColumnNames.ColumnName AS C1, tbl_Column01.Description AS D1, 

tbl_ColumnNames_1.ColumnName AS C2, tbl_Column02.Description AS D2, 

tbl_ColumnNames_2.ColumnName AS C3, tbl_Column03.Description AS D3, 

tbl_ColumnNames_3.ColumnName AS C4, tbl_Column04.Description AS D4, 

tbl_ColumnNames_4.ColumnName AS C5, tbl_Column05.Description AS D5, 

tbl_ColumnNames_5.ColumnName AS C6, tbl_Column06.Description AS D6, 

tbl_ColumnNames_6.ColumnName AS C7, tbl_Column07.Description AS D7, 

tbl_ColumnNames_7.ColumnName AS C8, tbl_Column08.Description AS D8, 

tbl_ColumnNames_8.ColumnName AS C9, tbl_Column09.Description AS D9, 

tbl_ColumnNames_9.ColumnName AS C10, tbl_Column10.Description AS D10, 

tbl_ColumnNames_10.ColumnName AS C11, tbl_Column11.Description AS D11

> 

>  

> 

> FROM tbl_ColumnNames AS tbl_ColumnNames_10 RIGHT JOIN (tbl_ColumnNames 

AS tbl_ColumnNames_9 RIGHT JOIN (tbl_ColumnNames AS tbl_ColumnNames_8 

RIGHT JOIN (tbl_ColumnNames AS tbl_ColumnNames_7 RIGHT JOIN 

(tbl_ColumnNames AS tbl_ColumnNames_6 RIGHT JOIN (tbl_ColumnNames AS 

tbl_ColumnNames_5 RIGHT JOIN (tbl_ColumnNames AS tbl_ColumnNames_4 RIGHT 

JOIN (tbl_ColumnNames AS tbl_ColumnNames_3 RIGHT JOIN (tbl_ColumnNames AS 

tbl_ColumnNames_2 RIGHT JOIN (tbl_ColumnNames AS tbl_ColumnNames_1 RIGHT 

JOIN (tbl_ColumnNames RIGHT JOIN (((((((((((tbl_cfgProductCodes LEFT JOIN 

tbl_Column01 ON tbl_cfgProductCodes.Column01Abrv = 

tbl_Column01.Column01Abrv) LEFT JOIN tbl_Column02 ON 

tbl_cfgProductCodes.Column02Abrv = tbl_Column02.Column02Abrv) LEFT JOIN 

tbl_Column03 ON tbl_cfgProductCodes.Column03Abrv = 

tbl_Column03.Column03Abrv) LEFT JOIN tbl_Column04 ON 

tbl_cfgProductCodes.Column04Abrv = tbl_Column04.Column04Abrv) LEFT JOIN 

tbl_Column05 ON tbl_cfgProductCodes.Column05Abrv = 

tbl_Column05.Column05Abrv) LEFT JOIN tbl_Column06 ON 

tbl_cfgProductCodes.Column06Abrv = tbl_Column06.Column06Abrv) LEFT JOIN 

tbl_Column07 ON tbl_cfgProductCodes.Column07Abrv = 

tbl_Column07.Column07Abrv) LEFT JOIN tbl_Column08 ON 

tbl_cfgProductCodes.Column08Abrv = tbl_Column08.Column08Abrv) LEFT JOIN 

tbl_Column09 ON tbl_cfgProductCodes.Column09Abrv = 

tbl_Column09.Column09Abrv) LEFT JOIN tbl_Column10 ON 

tbl_cfgProductCodes.Column10Abrv = tbl_Column10.Column10Abrv) LEFT JOIN 

tbl_Column11 ON tbl_cfgProductCodes.Column11Abrv = 

tbl_Column11.Column11Abrv) ON tbl_ColumnNames.ColumnNameID = 

tbl_Column01.ColumnNameID) ON tbl_ColumnNames_1.ColumnNameID = 

tbl_Column02.ColumnNameID) ON tbl_ColumnNames_2.ColumnNameID = 

tbl_Column03.ColumnNameID) ON tbl_ColumnNames_3.ColumnNameID = 

tbl_Column04.ColumnNameID) ON tbl_ColumnNames_4.ColumnNameID = 

tbl_Column05.ColumnNameID) ON tbl_ColumnNames_5.ColumnNameID = 

tbl_Column06.ColumnNameID) ON tbl_ColumnNames_6.ColumnNameID = 

tbl_Column07.ColumnNameID) ON tbl_ColumnNames_7.ColumnNameID = 

tbl_Column08.ColumnNameID) ON tbl_ColumnNames_8.ColumnNameID = 

tbl_Column09.ColumnNameID) ON tbl_ColumnNames_9.ColumnNameID = 

tbl_Column10.ColumnNameID) ON tbl_ColumnNames_10.ColumnNameID = 

tbl_Column11.ColumnNameID

> 

>  

> 

> WHERE (tbl_cfgProductCodes.ProductCode = @PC)

> 


  Return to Index