I'm building an application to record engineer input in Events (jobs) for an engineering company.
My main tables are Products, Builds and Events, together with fifty or so reference and ancillary tables which aren't really relevant to this particular head-scratcher.
A Build is derived from a Product and an Event is applied to a Build. An Event includes a sale, a service, a warranty repair and so on. Over time, multiple Events will be logged against a Build.
I have a searchable Events form (Search_Events), containing a subform (Search_Events_sub) whose contents dynamically change to reflect data entered in a variety of unbound fields in the main Events search form. Needless to say, the glue that holds things together is the Event_ID field.
On my Search_Events form, I'd like to place two buttons (Rpt_Event_client and Rpt_Event_internal) which will allow the user to print either a client or an internal copy of the event in question. The reason I want to use separate buttons rather than one button for both copies is that it's quite likely that different engineers will work on different parts of an Event's build, test and sign off process, and will want to print off and annotate the internal report, whereas only the final report will be sent to the client. Also, there will be some slight differences between the visible fields on each report (time and materials logged etc).
So far, I've managed to get the Rpt_Event_internal button to open the relevant Event report in preview mode, using the following on the button's 'on click' event:
(In the subform, Event_ID is referenced as s_Event_ID because I'm using an nZ function in most of the search fields so that the results filter dynamically)
So far, so good: this works fine. However, from a usability perspective, and based on the fact that this will be the most-used feature, I'd really like to be able to have the button do the following:
- print the relevant report, based on Event_ID as above to a PDF file
- synthesise the filename of the report along the lines of "Event_" & [Event_ID] & "_Client_Copy_" & [Date()] & ".pdf"
- and to then have the standard 'save as' Windows location browser/file explorer dialogue box appear so the user can choose where to save the file. I don't want the filepath to be hardwired, rather I need the users to be able to decide where to save the file.
I have a report that prints per customer. Is there a way to do a print all such that all the cusomer reports are printed without having to manually print each one ??
I want to print mulitple reports with different content based on a query. It is like printing invoices of different customers based on a date selection at once / automated..Current I have it working so that I have to select 1 customer at the time.
How to do this? trick is that these reports are all the same report being fed different data, opened and closed using VBA. In between the closing and opening the data gets changed. Best approach is?
How can I automate different printers for different reports on the same MS Access 2007 database, without having to select the printer each time?
There are two reports that are printed on the same database. Previously, I had automated form buttons to print the reports, without having to select the printer each time. This was about 8 years ago, but I don't remember how I did this. Also, I don't know SQL. Nothing against code, but I did not know how to program, and just MS Access 2007 access itself.
Hello Here's the problem: I'd like to print multiple reports using a button in a form. I guess I could use something like that: DoCmd.OpenReport "report1", acNormal DoCmd.OpenReport "report2", acNormal DoCmd.OpenReport "report3", acNormal DoCmd.OpenReport "report4", acNormal etc in the command.click sub but here's the tricky section: Some of my reports (they are all based in select queries) do not contain data. How can I make access print only these forms that include records ? For example if the query that provides records to the "report2" returns nothing, I would like on the commabd click event mentioned above, only the report1,3and 4 to be printed. Am I asking too much?Hope you guys understand what I'm talking about. Sorry , if my English isn't too good Thank you in advance
Our access database keep track of children attending an after-school music programme.
Each week we print registers and give them to the class teachers for them to mark who is coming. The registers are produced as a report, grouped by School then by Class.
We run 3 times a week so each week I need to print off 3 copies of the registers for each class.
Is there a way to print multiple copies of each group in a report? This would save me quite a bit of time each week.
Currently I have five separate reports setup in Access 2010 (that are running off of five separate queries). Since they have different data/fields, I was unable to combine into one query & one report.
However, I print each to PDF and then combine using Acrobat Pro. Is there a way to combine in VBA and not have to do the step using Acrobat Pro?Function PrintReports()
I was having trouble just setting each report with a particular print method - for some reason they just kept forgetting their individual settings and resorting to default on the machine.
This meant reports were printing on the wrong paper, or the wrong size paper, the wrong orientation and some times refusing to print if it couldn't find the paper (which is useful in runtime as it doesn't display error messages)
So I used Reports(rpt).printer properties (I forgot where I found this) to hard code the printer properties into each print command... this meant I had to use another function to insert the variables.
So all I had to do was say:
Code: PrintMe("Invoice","InvoiceID",iID)
and a report would print to exactly how I wanted... but it's just too slow!
See attached for full code, I have a niggling feeling it may be the function: PrinterOK, to make sure the printer exists or not.
Code: Function PrinterOK(sPrinterName As String) As Boolean Dim MyPrinter As Printer PrinterOK = False For Each MyPrinter In Printers If MyPrinter.DeviceName = sPrinterName Then PrinterOK = True Exit Function End If Next End Function
I know it's the printing code, because if I stop the printing and just preview then it shows up almost instantly.
I have a report that is a summary of multiple records in it. What I have next to the record on the report is a button.I have report that are labeled:
rptIncident Summary rptIncident Report and a button labeled "open report"
I would like to click on the button and then it open the rptIncident Report with all the information, not just the summary. I will put a picture so you know what I am trying to accomplish.Is this a simple Onclick event with a where condition or what? Or does this go beyond to having something to do with VBA?
I have been an MS Excel man all along my career and I am a novice in MS Access.I have created a table, [Initial Customer Approval] which records data from a Form, [Initial Customer Approval]. Once the data is entered in the Form, I need to do some calculations based on the data entered in some of the fields in the form.I created 6 different queries for the six possible values in those fields. now for each of those queries I created respective reports.I placed a Print command button in the Form.
1. When I press the Print button it should open the report for the current record in the Form. (Currently It Opens all the reports simulatneously, with only one relevant report containing the current record; other opened reports being blank.)
2. If user presses the Print button before pressing Save button then system should prompt user.
Here is the code (Please note [reference number] is the unique ID generated for each record entered in the tabe through form):
Private bSaveClicked As Boolean Private Sub Form_BeforeUpdate(Cancel As Integer) If Not bSaveClicked Then MsgBox "You are trying to navigate away from the active record. Please either save your changes, or press ESC to cancel your changes.", vbOKOnly + vbInformation Cancel = True
I have a form that the user can add Work Order numbers to a text box and pass them to a listbox to collect 1 or more values. Each of which need a separate report with the labour hours for each Work Order.
I am having issues figuring out how to get it to pass them to a query or filter the reports.
I have tried many different examples and nothing seems to work.
I am trying to pass a date range parameter & an additional parameter (Type of Audit) to 6 subreports based off individual crosstab queries and housed on one Unbound Report ("rptFinal").I have an Unbound Form "frmDate" passing a date range and Type of Audit using [Start Date] and [End Date] to rptFinal with a button that simply opens the rptFinal as follows:
In each Crosstab query, I have set the parameter criteria (in both the Parameter section & the query itself) to:
[Forms]![FrmDate]![Start Date] And [Forms]![FrmDate]![End Date] and also, [Forms]![FrmDate]![Enter Type of Audit]
On each subreports On Load Event, I have added:
Private Sub Report_Load() Me.Filter = "[DteAuditDate] BETWEEN #" & Forms!frmDate![Start Date] & "# AND #" & Forms!frmDate![End Date] & "#" Me.Filter = "[Type of Audit] = #" & Forms!frmDate![Enter Type of Audit] & "#" End Sub
and I've set the Filter On Load property to: Yes..I can open frmDate, fill in the date and Type of Audit, launch the report and it runs with no error, I have 6 blank subreports in report Preview. The headers are showing up but none of the data.
I have created a report which contains within it multiple sub-reports, which I use to generate a document for management meetings on a bi-weekly basis.
For each of these I have the subreports filtered to a unique number for consideration that period e.g. LIKE "88/00039" which relates to my data.
In order to change this I have to manually update each of the filter commands within the subreports but I assume there must be an easier 'catch-all' method of achieving this?
Ideally I'd be looking for a command prompt so I could enter just the number sequence e.g. "88/00040" and then enter this (via a corresponding macro or similar) to update the filter commands.
I have four forms named [Information Form], [Evidence Form], [Subject Form], and [Vehicle Form]. The Final Form is a Tabbed Form named [New Incident]. The tabbed form has four tabs, with each tab displaying one of the forms above. I also have a Print Command Button named [Print All] underneath the tabbed portion of the [New Incident] form.
Also, All of the four forms are set to data entry - yes, so that on open they will be clean and read for new record entry. I need the [Print All] button to do, just that, print everything that has or has not just been entered into the four forms, even if some are printed blank because they were not necessary for this particular report. One thin of note is that each form on the tab has a field for the "Incident Number" which will be the same for all four forms.
I am trying to add to a db I inherited. One of the end reports that is produced is a cost breakdown for each end user.As things stand, the data collates into individual reports which are then grouped into one file and saved via PDF. What I am trying to work out is whether or not I can selectively pick some of those reports to have more than one copy.
I see a form (within an existing form) that will list all of the end users for a particular scheme and, next to that, be a dropdown that will allow the db user to select how many copies of each report needs to be published. These will then collate merrily into one document to be saved to PDF.
I have a queries that do all the calculations and dumps the output to Query X for all different types of customers. At the moment I am required to generate a report for each of the customers and send it to them, manually.
End Goal:Initiate a Macro (at a given time at a given frequency) that would run a process to generate different reports for all different types of customers using a standard report template. I am also trying to avoid having to create a report for each customer (as the customer base grows, the report count will grow) so looking at something that would look into Query X and generate # of reports depending on number of customers.
I have this database with almost 10 reports (one report per table) that you can export or print. But I would like to have a button to export or print ALL the reports. Because when I try to build a report with all columns, access won't let me and suggests that I try with fewer columns or fields.
So naturally (after cursing and bursting with rage) I can only think of the solution to make a button that exports or prints all the reports.
My database is created with point and click actions from my side.
Every month, I create 15 individual reports with each report filtered by two fields, let's say Dept and Exec. You change Dept and Exec via a combo box drop down based on a table, and this information is passed to the query behind the report. Now, I repeat this process for every report. I use an unbound form that gathers the "Title", which is the Dept Name +"Special Report"; report Date using "as of" [DATE], and an updated through [Second Date].
Each monthly set of reports is sent to a new directory and folder (i.e. M:MOR Reports2005January. This changes each month. Somehow, I'd like to automate this where each report prints with its name to a newly created folder in pdf format.
I have been reading prior posts and am coming up with some ideas like adding a "selected" field to the Dept/Exec table and then step through those selected records to determine which report you are running. It takes a long time to print these to pdf in a new directory every month.
I wanted to print multiple reports using for loop but I am not sure how to start with.
This is basically my idea:
1. Create a hidden indicator, I name it txtHidden. 2. I have one table, there are one column for "report name". 3. I have one query, filtered the "report name" column according to txtHidden, criteria written in the design view. 4. Using For loop, browse through all the existing report. 5. Every loop, txtHidden will equals to every reportItem.Name. Query will run. 6. If Query is no result, dont open report, if query returns some result, open the report.
I wanted to code something as below, but I dont know what to put in the [Dont know what to type] field...
For Each [Dont know what to type] In Access.Reports [Forms]![frmStartup]![txtHidden] =[ Dont know what to type] .Name If DCount("*", "ReportQuery", "") > 0 Then DoCmd.OpenReport [Forms]![frmStartup]![txtHidden], acViewPreview End If Next
Hey all, I have a problem I was hoping that someone could help me with. I am trying to add my digital signature to my report. Since I have added an activeX Control to my form which display and stores my signauture, I would like to display it on my report as well (if it apperas with the record) So I added it like any other control to the report but when it is saved it is letters and numbers, so I have to make it back into a digital signature. Can anyone help me.Thanks
hi. i am working first time with query and reports. i have created a database. i have reports and query. i have a button in my form by the name of (View reports) if a user clicks on that button it opens another form with 3 options 1) Problems all report 2) problems resolved 3) Problems not resolved Now what i really want is when a user clicks on Problems all report it should go directly into excel worksheet based on my query which i have assigned and the width, column should be perfect in excel so then a user can print. secondly same thing goes for problems resolved based on my query which wil show all the problems which have been resolved and should open it in excel with everything alligned and ready to print. i know it is possible and i have been able to just print Problems all based on report not with my query and the formatting was really bad. i need to print reports based on my query directly in Excel worksheet with everything perfectly formatted. any help will be really appreciated. Thanks alot
I've created a pretty powerful Access Database that pulls information out of some ODBC tables we have on our local server. Of course, I created the database and all the forms and reports on my work computer here. But, when I was finished, I sent that entire database out to probably 20 or 30 people in the company. On a daily basis, they run the same program from their own computer and they like to print/export/etc. the reports that are produced. However, I don't understand why those reports print our on my personal printer (the printer is on the network). If they have a default printer at their site, why wouldn't it print there? Also, I haven't included any printing macros or VBA coding. I'm tired of having 30 or 40 sheets of paper print out on my printer daily. Any suggestions?