PDA

View Full Version : Print 2 copies of a report


mrsgwen90
Oct 15, 2007, 12:33 PM
I have a form in Access that has a print receipt command button. Once this button is clicked it will print a receipt (which is actually created as a report). I want 2 copies of this to print when the print receipt button is click. Please take a look at the code I have to see what I need to do to be able to accomplish this.

rivate Sub PrintRec_Click()
On Error Go to Err_PrintRec_Click

Dim rstTrans As New ADODB.Recordset
Dim fld As ADODB.Field
Dim strField As String
Dim curCount As Currency

rstTrans.Open "dbo_tbl_Transactions", CurrentProject.Connection, adOpenKeyset, adLockOptimistic

If IsNull(Me.TempTransNumID.value) Then
'this is new record
rstTrans.AddNew
Else
'to stay on the record that was just inserted for editing
rstTrans.Find ("TransNumID=" + Str$(Me.TempTransNumID))
End If

rstTrans!TransDate = Me.TransDate
rstTrans!CustomerName = Me.CustomerName
rstTrans!VehType = Me.VehType
rstTrans!TktType = Me.TktType
rstTrans!Auth_By = Me.AuthBy
rstTrans!Quantity = Me.Quantity
rstTrans!SHtkt1 = Me.SHtkt1
rstTrans!SHtkt2 = Me.SHtkt2
rstTrans!HRtkt1 = Me.HRtkt1
rstTrans!HRtkt2 = Me.HRtkt2
rstTrans!TransPayAmt = Me.TransPayAmt
rstTrans!PaymentType = Me.txtPaymentType
rstTrans!PaymentMethod = Me.cboPaymentMethod
rstTrans!CheckNum = Me.CheckNum
rstTrans!TransReceiptMemo = Me.TransReceiptMemo
rstTrans!TransEntryTime = Now()
rstTrans!TransEntryUserID = appUser

If Me.cboPaymentMethod = "Check" And IsNull(CheckNum) Then 'Check number not entered
MsgBox "You must enter a check no.", vbCritical, "Check Number Verification"
CheckNum.SetFocus
Exit Sub
End If

rstTrans.Update
'this was a new record so update the form value of TransNumID for edit
If IsNull(rstTrans!TransNumID.value) <> True Then
Me.TempTransNumID = rstTrans!TransNumID.value
End If

whereClause = "NewQryShuttleHandiRideReceipt.TransNumID" & " = " & rstTrans!TransNumID

/////here is where the receipt prints.

DoCmd.OpenReport "RptShuttle HandiRide Receipt", acViewNormal, whereClause

rstTrans.Close

Set rstTrans = Nothing
Me.cmdAddRec.Enabled = True

Exit_PrintRec_Click:
MsgBox "Record Successfully Saved! Printing Receipt."
Exit Sub

Err_PrintRec_Click:
MsgBox Err.Description
Resume Exit_PrintRec_Click

End Sub

ScottGem
Oct 15, 2007, 12:36 PM
/////here is where the receipt prints.

DoCmd.OpenReport "RptShuttle HandiRide Receipt", acViewNormal, , whereClause



If you ALWAYS want 2 copies, just run that command twice.

mrsgwen90
Oct 15, 2007, 12:59 PM
Code twice or is there some kind of command that will tell it to run twice?

mrsgwen90
Oct 15, 2007, 01:05 PM
Thank you.. I just copied the command again and it worked!!

Thanks a bunch!

ScottGem
Oct 15, 2007, 03:59 PM
That's all that was necessary. There is a way to control the printer, but for 2 copies this was easier.