I've gotten rid of all the linked tables from my frontend, so I'm fetching all my data from the backend with VBA code.
This works splendidly until I got to creating reports!
I can populate the report detail with the below code, by opening a recordset and filling in the appropriate text boxes when the report calls the Format_Detail subroutine, but the problem is, that opening a report with no recordsource sets the FormatCount property to 0, so it only runs through the format_detail once. Setting the .nextrecord to FALSE allows as many sub calls as I need, but I can't figure out how to force the report to generate a new detail line! It's looping through all the records in the recordset, but it's only generating one line on the report
Any ideas?
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
On Error Resume Next
If tags.EOF = True Then
[txtfound] = tags.RecordCount
tags.Close
Set tags = Nothing
Me.nextrecord = True
Exit Sub
Set tags = backend.OpenRecordset("SELECT Tags.TagCode, Codes.Description, Count(Tags.TagCode) AS CountOfTagCode FROM Codes INNER JOIN Tags ON Codes.Code = Tags.TagCode GROUP BY Tags.TagCode, Codes.Description")
I have been working on this for over a week in Access 2010 and I know that I am almost there, but need getting over this last hurdle as I have a severe case of tunnel vision on this while I am trying to get it to work.
I have a Main Report based on my Element table and a subreport based on my OTC table. There is a one-to-many relationship between the Element and the OTC table.My Master / Child Fields between the two reports are as follows: ElementID;GroupNum
My SQL for the Main report is:
Code: SELECT Val(DCount("*","Element","ElementID=" & [ElementID] & " AND Step <" & [Step]))2 AS GroupNum, Element.ElementID, Element.ProcessID, Element.ModelID, Element.Step, Element.ElementDescription, Element.RevDate, Element.GPCFS, Element.TrainingGate FROM Element
[code]...
As an example in testing this report, I am looking at a specific Element with 33 records and a total of 72 OTC records. Each of the 33 records can have 1 or 2 or 3 or up to 4 OTC records but the report is only 17 pages which tells me that the page break is occuring based on the ElementID and not on the OTC records....
I have a report which is grouped by employee number - each group can have one or many records displayed - it works fine, but can look untidy sometimes when there are more records than will fit without wrapping onto another page; this is particularly prevalent when there are two or three groups - the third one may run over onto the next page, without group headers.
Is there anyway to force a page break at the bottom of a group if that group is not going to fit on the current page in its entirety?
I have this on two slightly different reports, where only one line of the report is different. One report works fine, no problems. All the data is there. But on the second report I get the dreaded #Name? error.
I have two numeric fields which make up what looks like a full decimalised number ie 20.22 - only I am unable to put the decimal point in between the two numbers.
I thought about putting in an unbound object such as a picture of a full-stop but cant get it anchored at the correct angle to make it look convincing in the report.As this is such a huge database I have tried to amend the tables, but it loses vital data ?
I have an unbound combo box on a report that looks up to a table of address data.I have a specific requirement where if one of the bound fields on the report is a specific value, I want the combo box to show data. If the bound control on the report is a different value, I want the data in the combo box to be different.
I have tried using the OnOpen method, but it says I cannot assign a value to it.I have tried using the OnLoad procedure, but it doesn't show anything. the code is as follows:
Code: Private Sub Report_Load(Cancel As Integer) If Me.[Dispatch Type] = "Sent to A" Then Me.cboDispatchTo = 15 ElseIf Me.[Dispatch Type] = "Sent to B" Then Me.cboDispatchTo = 8 End If End Sub
I have 10 unbound textboxes with the Tag Name "LoopID" in my report. I have to display the "PatientNumbers" field from the table tblPatient in those text boxes. Below is my code.
When I run the report, I get the error message: Run-time error '2448.' You can't assign value to this object and the code "Ctl.Value = rst!LCANumber" is highlighted.
Private Sub Report_Current() Dim strSql As String Dim dbs As Database Dim rst As Recordset Dim x As Integer Dim Ctl As Control strSql = "Select PatientNumber from tblPatient"
I have a report that starts with an unbound form [Form1] which I need for the parameter inputs. Date1, Date2 and BillingMonth, all three are unbound controls. Date1 and Date2 are the criteria for the dates of billing and they work fine, that is, the query looks them up and the query runs fine. But I want to use the unbound control of BillingMonth to populate an unbound control in the report heading.
The control source is set as =[Forms]![Form1].[BillingMonth]; it works fine if the underlying [Form1] is still open. There is a command button on [Form1] that opens the report and then closes [Form1] since it is a pop-up form that is only used to get the criteria for the underling query; I don't want it to remain open when I run the report. However, the [BillingMonth] does not appear on the report heading. Just #Name?, which I assume means that since [Form1] is no longer open, it can't find the control [BillingMonth].
So, how can I get the [BillingMonth] to appear on the report heading?
I have an unbound text box in the detail section of a report that can be anywhere from a couple of lines to more than 90, depending on what items have been selected elsewhere. I've gotten the size of the textbox and detail section to vary using .height and allowing for 270 per line. All this works fine and everything prints. However...
The problem is that with the reports where this textbox won't fit on the first page, the detail section doesn't begin printing anything until the second page. It will then break across pages 2 and 3 just fine, but I would like it to start printing on page 1 whether it will fit or not. Research shows it has something to do with the "on retreat" event, but I can't find enough to figure out what to do.
I have a report [Report1] that gets its data from a query [Query1]. On [Report1] there is an unbound text box [EnterEndDate] that I want to use as a filter for the report criteria, and have it filter the report to show every report row with the value in the [EndDate] field greater than what the user entered in [EnterEndDate].
There is no need to save the value used in [EnterEndDate]. It will be entered after the report is run and changed on demand while the report is open for the user to see different date ranges.
For a text box in a Report, I am trying to use the "SumOf([UnboundTextBox])" as the Control Source in the Report Footer to add the unbound text box in the Details section. I know it works with a bound text box, but does it not work with an unbound text box?
I have a report, in which i have a unbound text box i want to control the size of the text box as actual characters means,
if the word is in box is elephant so in report it show complete word then next and if the word is small like cat then it resize then the other word next to cat comes automatically at normal space by auto resizing of text box ..
I have a report with an unbound checkbox which has a null (greyed out value) when printed. I'm just trying to set it to false when the report opens.I have
Code: Private Sub Report_Open(Cancel As Integer) Me.CheckNotPaid = False End Sub
but it just says 'Runtime Error -214..You can't assign a value to this object'
When I open the report on XP/Access 2007, it works just fine.
When I open the exact same accdb with a Win7/A2007 machine, the report does not open. If I debug and display the error, a msgbox appears "The OpenReport action was canceled."
I have other bound reports and those open with XP/A2007 or Win7/A2007 just fine.
It makes me VERY nervous that the same exact ACCDB in A2007 runs differently on different OSs (XP vs Win7).
This basically gives a count of for a specific month. There are twelve rows of text boxes and two columns. There is a query applied to the report to input the year, as this is a yearly report.
What I want to do is link a chart to each and every text box to show the data in an easy to view format. But I can't seem to figure it out, and I've had no luck on the web .
SELECT qryHoursReq.VolunteerId, qryHoursReq.Name, qryHoursReq.Program, Sum(qryHoursReq.Total_Time) AS SumOfTotal_Time, qryHoursReq.S_date FROM qryHoursReq GROUP BY qryHoursReq.VolunteerId, qryHoursReq.Name, qryHoursReq.Program, qryHoursReq.S_date HAVING (((qryHoursReq.S_date) Between [startdate] And [enddate]));
This is my query
I'm trying to get a count of distinct volunteerID in an unbound textbox on report.
If I use =Count(*) I get 2 when I put in date parameters and it groups by program
This is kind of correct, but, these 2 are the same person, she had different days she participated.
What code can I use for only get a count of 1
FOrgot to mention, when I use the DCount with numerous examples, I get #Error
I have a report that generates an in-house physical invoice for an event. On this report is a small section for a staff member to make hand written notes regarding when we call a week before the event as a final confirmation.
I want to have an empty check box in this section for the person to put a hand-written check. I tried creating an unbound check box in the report but it defaults to the gray fill of a null valued check box when printed.I tried setting it's default value in the report to 0 but for some reason I can't find a Default Value field among it's properties in the Property side bar. I did some research and thought that setting the Triple State value to No would solve this issue but it didn't.
How I can get rid of the gray fill when the report is printed? The field is completely unbound--this check box is purely for hand written notes, it has nothing to do with the database itself.
Working on a report that displays multiple pie charts. Each chart is based on a different query. I cannot pull a single query for all charts due to the criteria for each conflicting with each other. Each query is filtered by Fiscal Year based on what I input into my Fiscal Year Filter form. The command button on the FY Filter Form opens the report, set TempVar to the FY field (the criteria for each query), and closed the FY Filter Form. This works as I want it to.
The problem: I have additional fields I want to show up on the form such as number of completed students (WINGED). This number is based on yet another query where all completed students are counted [WingedCount]. I have tried to write an expression to an unbound field that points at this [WingedCount] field but it does not work. Then, I changed the report's source as the query with the [WingedCount] field. This does work, however this is where I run into an issue
I open my FY Filter Form and type in my criteria and select the open command button. However, now I am asked for the criteria again for each chart on the report.
I need a way to input the criteria only once and have all charts populate as well as my count field.
I have attached a jpeg of my current report and will upload jpegs of the needed output following this post.
I am using an unbound object frame to display an .png image file which is set in vba.
The image is an excel chart saved as a .png
The problem I have however is that the image I save from Excel is great quality, and is pretty tack sharp, but when I display the same file in the unbound object frame in access, it is not nearly as sharp.
I am setting the picture property of the control as:
ubImageUserChart = "c: empmyChart.png"
It displays alright, but is just a bit fuzzy - still quite legible, but it is a complex graph with a lot going on - has regressions and formulas etc on the graph, and they need to be very clear.
BTW - the unbound frame is the same size as the Excel chart which gets saved as a .png file. If I tile the images (Access unbound frame and original file in picassa preview) side by side - they are identical - size, orientation etc.
It is not practical for me to try and do the chart natively in access as it is way to complex. I am using access vba to drive an excel session to do all the statistical yack work and chart rendering, then displaying a png image of the resulting chart in an unbound object frame in access.
I have a quick query question. I have a table that lists employees and workcodes and time spent at the workcode, by date. There are multiple workcodes and I'm trying to create a query that lists each employee and total time spent in each workcode. The poblem I'm having is this: Unless the agent spent time in all the workcodes, he doesn't show up on the query.
For instance: Agent A, spent 200 minutes in Code A, 220 minutes in Code B, and 10 minutes in Code C. Agent A shows up fine in the query. Agent B, though, spent all 430 minutes in Code A. He doesn't show up at all.
I think it's also worth mentioning the format the information comes to me in. It's an Excel file broken up into 4 columns, Date, Agent, Code, and Duration. As much as I would like it to be Date, Agent, Code A, Code B, ect, I have no control or say in its format.
I have an Access Application that has a simple username/password interface that controls user access. It can then track who does what and controls access to different screens. Very simple.
One terminal is used by multiple users and they forget to log-out the previous user as it is a Production envirnoment.
Is there a timer that I can add to the App that logs Access off automatically after a period of time??
So I have a table that does a count on ratings in a certain category. The problem is that I want a number to appear for each of the three categories, even when the count returns nothing. In other words, we have 3 rating types, "poor, good, and great," and I need a result for it, even if no one gave the category a poor rating. Now I figured that if I created a table (tblCateg) that just held the three categories (sCatDesc) and did a join on the other table (Ratings) with the column (IN_Category) that I needed, it would force the query to make all 3 ratings appear and a count for each. Unfortunately, this didn't happen. All that appeared was --------- Great 17 Good 7 ---------
I figure the query is just seeing the count for the Poor rating as a Null rather than a 0; anyone know how I can force it to see it as a 0 instead?
Here's the query I'm using:
SELECT tblCateg.sCatDesc, Count(Ratings.IN_Category) AS CountOfIN_Category FROM tblCateg LEFT JOIN Ratings ON tblCateg.sCatDesc = Ratings.IN_Category WHERE (((Ratings.RatingDT) Between #1/1/2007# And #3/31/2007#)) GROUP BY tblCateg.sCatDesc;
I have a report button on a form and the form is the way of inputting in to two tables. I need a way to force the update of the tables before the query that the report is based on, is run.
Is there a command that forces an update of the tables?
I have imported a large contacts table from an old database. The Name field has had all the names input as JOE BLOGGS etc. I can force the table to read joe bloggs etc using < in the format box in properties for this field. But I want the names to read in the Joe Bloggs format, first letter in each name being upper case. Is there an easy way of doing this.
Just got back in to databases after 15 years so wee bit lost at the moment.:o
This should be an easy one, but I’ve been know to say that before…
There are 2 tables (Experts and Education) I also have a form called Edit expert. On this form I have a tab control with 2 tabs. Each tab has a subform on it. The subform data entry property is set to yes. I want the user to enter the contact info of an expert on one tab, click the next tab and enter the education that the expert has. The 2 tables are in a one to many relationship with ExpertID being the primary key. So when you add a record to the education table you need the ExpertID. Well I want to be able to give it to the user. I have a control ExpertID on both subforms. On the first subform, the control source is ExpertID from the Experts table. On the second subform, the control source is set to the ExpertID on the previous subform. It works great until access tries to enter the record into education. Even though the correct expertID is in the box, it says that “you can not add or change a record because a related record is required in the table experts” so this leads me to think that access has not yet committed the Contact info record yet. What I want to know is can I force access to commit the record before the user moves onto the next tab? I have zipped a dumbed down version so you can hopefully understand what I’m rambling about =) all you need to do is pull up the Edit Expert form, enter a rec and then click on the Education tab. you'll see the correct ExpertID for the record you are about to enter, but after you enter the rec and try to click else where it yells at you. thanks for your time and effort!! - me