Modules & VBA :: Find Out Which Records Actually Being Used / Open / Edited In Split DB
Jan 21, 2015
I have a split db in use by about 20 people. Ocasionally a user opens a record that is already opened by some other user and if changes are made then he gets error 7878; "the data has changed error"
Is it possible to find out which records are actually being used/open/edited in a split db? All tables are related to the main key (CallID on table Contacts).
If it was possible to find out, I could have a label show up in the db record search form telling the user not to open that record.
I have a database / form with a hidden timestamp field [LastEdit] that is filled automatically with the current time Now() when updated. The purpose is that each time the form is opened I want it to "Goto" the last edited record.
I *think* I get around the find edit quotes because the smaller snippets below do work.
But the whole thing fails when I put it into one command as either one of these DoCmd.FindRecord DMax("[LastEdit]", "esn"), , , acSearchAll or DoCmd.FindRecord findit, , , acSearchAll perhaps because of the quotes around the variable.
My database was working fine until I split the database and now I'm having issues with this function:
Code: Public Function OpenFirstAttachmentAsTempFile(ByRef rstCurrent As DAO.Recordset, ByVal strFieldName As String) As String Dim rstChild As DAO.Recordset2 Dim fldAttach As DAO.Field2 Dim strFilePath As String Dim strTempDir As String
[Code] ....
It's getting stuck on the "strFilePath = strTempDir & rstChild.Fields("FileName").Value" line. The debugger says that there is no reord. The strTempDir is correct. I am assuming that the issue has to with linking to the database.
I am 2 years into my database. I am trying to find and open a folder based on a text box. The problem is folder could be in many sub folders which is hold on our J: drive.
To further complicate, the folder i am searching may not be exactly as the text box states.
EG. Text box could say 123456 however the folder could be called M123456 etc.
How do i locate a folder or subfolder and open it based on part of a text box...
I have a problem that should have an easy solution. But I can't find it.
I need to have a user add a new record. (Created a form with the fields on it, No problem , so far.)
The problem is when the user is adding a new record if they hit the PAGE DOWN Key or the mouse scroll, they then go to a new NEW record. (And if they are not paying attention they now have two new records)
I have a database for work where I have a table of meters and a table of Faults which has a list of all faulty meters at one time. When a fault is repaired, I have a macro which updates the Meter Status to Working, adds a Fault Closed date, appends the record to the Closed table and then deletes it from the Faults table.
The user runs this from a form by clicking the Closed Fault button which activates the macro. I've added Echo on and off to hide that the form is temporarily closed while the Append and Delete queries are run and then it is re-opened again.
My problem is that the Form always opens at the first record in the Faults table. I would like it to open to the record which would have been next after the one that has been moved to the Closed Faults table.
Below is the code I have been using to test the Copying Meter Reference, closing and opening of the form and finding the correct record:-
Function CopyTest() On Error GoTo CopyTest_Err Dim strMeterRef As String DoCmd.SetWarnings False DoCmd.GoToRecord , "", acNext strMeterRef = Meter_Reference
[code]....
As you can see I am trying to go to the next record, copy the Meter_Reference by setting it to strMeterRef and then Find strMeterRef when the Faults form is re-opened.
I have a Macro embedded in a button which calls the above Function by using RunCode but nothing happens.
Basically what I have is a form where operators can input certain information about a production process, in particular the kg input which has gone into the 'basket'. However this is divided by customer order number and sometimes more than one customers order is placed into the same basket. This means that the weight of the record is not representative of the weight in the basket, and it is the weight of the basket which determines efficiency in the process.
Each basket is designated a 'Disc Number' which is put in the basket so the parts contained can be identified after the process. What I am trying to do is right a code, whether in my table or form (or somehow creating a query) which compares the disc number of the previous record (or previous 2 or 3) and if they are the same the totals are combined. Each record the user places has a hidden ID which keeps them in order, and the records with the same disc number will always be entered after one another in that sequence.
How would I be able to code something to deal with this and where would I put it?The table in question which contains the records is called Thetatbl and then form it links to is Thetafrm. The weight of each record is contained in Orderkgtxt.
I'm looking for some type of custom function that will search a specified column for any keywords listed inside another table.
I can run a query on each keyword individually, however there are 50 and it takes a long time each time I do it. I was hoping to write in a function for that column and it would just select all records that match.
These would all need to be a "like" with an " * " on each end of the word.
With SQL it would look something like:
Code: select a.address1 from main_tbl as a where a.address1 like '* north *' or a.address1 like '* park *' or a.address1 like '* south *';
I just want it to read each of the table values instead of hard coding them and the column name would be the function name so it can be used in any column I specify. I'm just not sure how to incorporate this into a custom function.
I'm using a split form with the datasheet on the left.
When I use the 'Find' in the Navigation buttons at the bottom of the form, it refuse to find text in a particular text box.
The text box is a memo field and is enabled.
Example:
I have text in the memo field which is a title of an episode - "The Outcast."
When I start typing "the" it finds this text in the memo field. But when I type the entire title it the finds the text in another field. ie "out."
I've tried the 3 different Search setting in options. When I use the Find command from the ribbon it work ok as long as I select the text box to search in first.
In a situation where I imported an excel file with so many columns and split them into two temp tables and they are linked using a key.
the data has a fixed part lets say
Field1....Field2.....Filed3.....Field4...then Field5.....Field6.....Field7....Field8 is the same data range as Field9...Field10...Field11...Field12. I would want to split this data into multiple rows like this
Field 1 Field2 Field3 Field4 Field5 Field6 Field7 Field8 Field 1 Field2 Field3 Field4 Field9 field10 field11 field12 and so own...
I'm having a problem with a database that i had split. While creating teh database, i had it stored on my personal drive at work, but wanted to move it to the shared drive so the data could be stored there. this is to deal with cross site network connectivity issues that we encountered with another database here at work.
When splitting the database, i split it on my personal drive and then dragged the back end to the common drive. I realized my error, but when attempting to correct it, i somehow have two of the same file, and no back end?
I receive the error on the attached document when attempting to access any of the tables or information in either of the files, the "back end" that i placed on teh drive, and the "front end" that i have on my personal drive.
I also tried to relink the tables through the linked table manager, but receive the same error when attempting that.
Is there a way to recover from this? I had backed up my file by making a copy prior to splitting, but somewhere in this process, this became linked to these and is having the same issue. Is there a way to recover the old "unsplit" version? I cannot copy over all of teh tables, etc. because i get the same error as earlier.
I can attach a copy of my database for reference...
I have a database as follows: Date1 Name Issue Action_Item1 Status1 Action_Item2 Status2 .....
with up to 5 max action items/status; where Status is a checkbox.I ONLY want the report to return records where there is text in an action_Item input AND the corresponding status is FALSE. The issue I'm having is that there may be ACtion_Item inputs withOUT text; so I can't simply query the Status checkbox for false.how to get started.
I have to create a database with more than ten thousand records. There is a field on which image by clicking the image to be displayed with the default program based on the image on which you clicked.
Code:
Private Sub Campo1_Click() Dim L As Long L = ShellExecute(0, "Open", """" & "C:UsersNickDesktopDocumentiPicturesDioDiego.jpg" & """", vbNullString, vbNullString, 1) End Sub
When onClick event happens on the image is displayed the same image regardless of the record on which you clicked. How do I change the code to open the image of the field that was clicked?
I have a split database with the backend on our server. When I go to my server and look at all the open files on the network everyone who is in the backend shows up twice. One has zero locks and the other has multiple locks.
OK, I admit it, I'm lost. I searched and found the code to find out if a form is open, but I don't know how to use it. How do I "pass the from name to the function"? I keep getting mismatch errors Please help!
Hi I am looking for help related to the “You do not have exclusive access to the database at this time. If you proceed to make changes, you may not be able to save them later.” message when trying to change the design. I have done a lot of reading on this forum as well as googled the subject but have not found anything regarding my specific question. I find that there’s a whole lot of information regarding workgroup security and how to set up and troubleshoot. However, my needs are a bit more simple – I think :) We have a database that is shared among 5-6 users during a couple months out of the year. There are no log-on id’s required and everyone just opens the file and works as needed. Everything works fine; we have no problems with users changing or doing more than they are supposed to. Therefore, I don’t want to break anything by complicating matters…it works and we’re happy with it. The only annoyance is that during these couple months, someone has to make occasional changes to the database in design mode. Of course, we need everyone else out of the database so he can have exclusive access. This entails calling and/or running around asking those people to close the file and sometimes physically checking computers left unattended with the file open. So my question is: Is there any way to find out what users or workstations have the file open? This would make it so much simpler. All the users are on a Windows Server 2003 network and the files reside on a server. Perhaps this is more of a Windows question; I couldn’t think where else to post it! If anyone could point me in the right direction, I would really appreciate it. Thanks!
is there a way to find out who has a record open and send him message or someting similar?It happens from time to time that some one has a record open (selected in a form) and then is doing other things while the record is locked and a second person can't do nothing to the record.
I'm not sure if I am biting off more than I can chew. I have a text field in each record in my database (Inherited) The db has nearly 5,000 records. I would like to split the field into records in a seperate table. An Example of the table as is now;
Is this possible in one hit or do I need to process the records without dates first and then run another process to split those with Dates? I say dates but the field is a text field. About 15-20% of the records contain dates which are always enclosed in parenthesis.
Now he can get into the SFTP folder, but when he uses the shortcut, he gets an error stating Microsoft Access couldn't find the file ServerName.ACCT05.us.companyabbreviation.comSha reNameSFTPSFTPWorkgroup.mdw 1" "C:SFTP Database V2.1 FESFTP Database V2.1 FE.mdb" (Note the space and 1)
I created a new shortcut, and I was able to open the db using his target line, even though I can use the shorter one. For the new user, this still generates an error.
I have a split database with the back end on a sharedrive. I have the front end saved on my own drive and the same for my colleague.
When I view the front end version of my colleagues, I can see a records on there that she has input but I can't see them when I open my own copy of the front end plus when I view the back end I can't see the records there at all.
I created a split form. My main form is just a form, based off of tblBlotter. The subform is based off a query, which is the based off the same tblBlotter. (Not sure if this is proper - maybe I just need the table?)
I have a link master and link child field set to ID. When I open the form "subBlotterHistory", it opens and shows as a new record only. I want it to show ALL records on the query subform and be able to scroll up, down and edit.
I have split the database, with the back-end residing on the server. Only 1 other person is working in Access right now; she's verifying the data. Today she's working directly in the back-end, could this be the problem. If it is, I'm going to have to create a front-end for her quickly.
My problem is this...I'm working on queries and forms so that the scientists who will ultimately be using this application, won't be able to go in and inadvertently change something in the tables set-up. When I'm in the back-end main data table, it says I have 2723 records.
When I create a front-end query to query all the records in that table, it says I have 2160 records.
The input form that I created with most of the same fields as the query (created BEFORE I created the query...I'll have it pull from the query now instead of directly from the table) also says we only have 2160 records.