Locked=True Fuzzy
Jun 1, 2005
I have a form that has code tied to the 'on open' event that is going to be accessed by users where we want them to only have access to certain fields which we want them to fill out. The fileds that will be locked will change based on the field called 'Item Number'. The code will be long because there are 30 different Item Numbers and about 10 to 20 fields that we will disable based on the Item Number. The code is like:
Dim Item_Number As String
If Me.Item_Number = "32000" Then
Me.Batch_Lot_Number.Enabled = False
End If
This is all great except that the disable makes the field kind of obscure by the color it gives it. I don't want to use the lock property because that doesn't give you a visual clue that its locked.
Is there a way to change the color of the field background using VBA?
View Replies
ADVERTISEMENT
Mar 4, 2006
Hello All,
For those who are interested in Approximate String Matching or those who could use these algorithms; I have a complete suite of Approximate String Matching algorithms written in Visual Basic in an Access database.
In 2004 I decided to jump into the world of Fuzzy Matching with both feet.
As it is, I am working for a company that deals with names, addresses, etc. very intensely. It is a fair sized company that
uses Access on a grand scale. Since I am an Access programmer, I work in an Access gold mine!
I knew that if I could get a good handle on Fuzzy Matching, that when I hit the right person at the right time, the company could greatly benefit from my research on Fuzzy Matching. The right time and the right person are not here yet.
Nevertheless, since I have reaped much free source code and information from the Web, it is now time to return the favor.
I developed a package that is sort of a demo/tutorial on Approximate String Matching algorithms in Access that is very
robust in Fuzzy Matching. It would overtax the post in this forum for me to include it in a post.
To summarize, it works with the basic name - Last, First, and Middle. It has a user interface that allows a user to type in
what would be a good name and what would be a questionable name to resemble the good name. The weighted results of all the various algorithms can be chosen, or an individual algorithm can be chosen to display how closely the names match.
In addition, it has a table of 17,295 known good names with unique ID numbers as a reference table, and table of 1200
morphed names that are typical of names entered in a database with no input conventions. These morphed names have typos, transpositions, variations on maiden names, etc. 1200 good names were selected for alteration and the unique ID of each original good name was stored in the table with the altered names to determine the accuracy of the matching process.
The morphed names were compared to the known good names in a query with an approximate join using the suite of algorithms to determine match percentage. The altered names, the ID number of the original good name, the ID number of the name it matched to, and the match percentage were stored in a results table to determine the results of the matching run.
These tables were used to test and tweak the algorithms by comparing the morphed names with the known good names. The results of 1322 names were saved to a results table with match scores.
The matching process was executed in a query with an approximate join using the suite of algorithms.
The match results:
Total Approximate Matches: 1188
(Recall) Precision Pct: 99.00%
Total Unmatched Names: 12
Unmatched Pct: 1.00%
Total Other Matches: 134
Other Matches Pct: .77%
The tables are accessible in the database, so anyone can run their own tests. The interface is set up to accommodate this
as well.
The algorithms used: Dice coefficient as a threshold algorithm, Levenshtein Distance algorithm, Longest Common Subsequence, and the DoubleMetaphone. The names were passed to the algorithms by way of the bigram model.
I will email it to anyone who requests it.
It is in two platforms, Office 97 and Office 2000 as FuzzyMatching97.zip (692 KB) and FuzzyMatching2k.zip (721 KB).
The zip files include ApprxStrMatchingEngine97.pps or ApprxStrMatchingEngine2k.pps respectively, StrMatching97.mde or StrMatching2k.mde respectively, IEEESoundexV5.pdf, and VBAlgorithms.txt.
IEEESoundexV5.pdf is an abstract about Approximate Sting Matching that fired my curiosity about the subject, and pertains to the package.
VBAlgorithms.txt contains the entire suite of algorithms in Visual Basic extracted from the MDB modules.
The PowerPoint presentations describe the workings of the MDE and give a good overview of Fuzzy Matching.
To match is divine....
View 10 Replies
View Related
Aug 22, 2006
Hi all,
I've got two vast tables of data which I need to link, however the field unique to each was, at it's source, a typed field, and as such both have errors, typos, formatting problems, known deviations etc.
An example would be something like this:
Table1: SFOC0912JB3
Table2: F0CO9I2JB3
(These are harware serial numbers for what it's worth). I could do with creating a link between the two tables which would return a true based on a number of possibilities, such as:
Match if:
- String matches with prepended 'S', 'C' and/or
- String matches with substituted 'I' and '1' in any or all positions and/or
- String matches with substituted 'O' and '0' and/or
etc.
I think Levenshtein had the right answer from what I've been reading, but I haven't yet found an implementation for access (freely) available.
Any ideas?
Thanks,
Alex
View 1 Replies
View Related
Jan 7, 2007
Many have had questions on how to use this for their own purposes.
Link to the original post:
http://www.access-programmers.co.uk/forums/showthread.php?t=103279
Download at: http://www.kdkeys.net/forums/thread/6450.aspx
Here is how you can use it - I provide this example:
Tables and queries can be created in the MDE database.
Create a table with known good reference strings. I created this one - REF_LIST.
It has one field, REF_STRING (Text) with a length of 50, and indexed (No Duplicates). The field length can be set to a length that suits your requirements.
This is the content:
REF_STRING
Claw Hammer
Cold Chisel
Monkey Wrench
Nail Gun
Create another table with strings to match. I created this one - TEST_LIST.
It has one field, TEST_STRING (Text) with a length of 50, and indexed (Either No Duplicates or Duplicates Ok depending on the data). The field length can be set to a length that suits your requirements.
This is the content:
TEST_STRING
Claw Hamer
Claw Hammr
Clew Hammer
Clw Hammer
Cold Chisil
Cold Chisle
Cold Chissel
Cole Chisel
Monkey Wrnech
Monkie Wrench
Monky Rench
Nail Gn
Nail Gunn
Naill Gun
Nial Gun
Then create another table for the results. I created this one - RESULTS.
It has four fields, REF_STRING (same properties as in table REF_LIST), TEST_STRING (same properties as in table TEST_LIST), MATCH_VALU (Single, Fixed, 2 decimal places), and GOOD_MATCH (True/False).
This is the content from the results of the Match_Lists query.
REF_STRINGTEST_STRINGMATCH_VALUGOOD_MATCH
Nail GunNial Gun0.92No
Monkey WrenchMonky Rench0.94No
Monkey WrenchMonkie Wrench0.94No
Claw HammerClew Hammer0.94No
Cold ChiselCold Chisle0.94No
Cold ChiselCold Chisil0.94No
Cold ChiselCole Chisel0.94No
Nail GunNail Gn0.95No
Monkey WrenchMonkey Wrnech0.95No
Nail GunNail Gunn0.96No
Nail GunNaill Gun0.96No
Claw HammerClaw Hamer0.96No
Claw HammerClaw Hammr0.96No
Claw HammerClw Hammer0.96No
Cold ChiselCold Chissel0.97No
SQL from the Match_Lists query:
INSERT INTO RESULTS ( REF_STRING, TEST_STRING, MATCH_VALU )
SELECT REF_LIST.REF_STRING, TEST_LIST.TEST_STRING, IsSimilar([REF_STRING],[TEST_STRING]) AS Expr1
FROM REF_LIST, TEST_LIST
WHERE (((IsSimilar([REF_STRING],[TEST_STRING]))>0.79));
Using this example you can populate the two tables, REF_LIST and TEST_LIST with strings that you need to compare and run the Match_Lists query.
The GOOD_MATCH field in the RESULTS table is for you or another human to determine if anything questionable is a good match for your purposes.
If it is found that any match with a value of at least .95 is a good match then an update query could be created to update the GOOD_MATCH field with true for all those with a value of >= .95.
Then a select query could be created to look at those matches that do not have a GOOD_MATCH to determine if they may be good matches.
Naturally the two tables may need a unique ID for the strings for better tracking and comparing.
If so, create them and have them appended to the RESULTS table as well in the Match_Lists query.
OpnSeason
View 4 Replies
View Related
Apr 14, 2005
I need to link two tables on the Name Field. The trouble is that the names are not enterred the same in each table, so I can't do a direct = comparison.
For instance, one table might have "The Heart Center of Indiana", while the other has "Heart Center of Indiana" Or one might have "St. John's Medical Center" and the other has "St Johns Medical Center" (or, god help me, "St John's Hospital")
My only thoughts are somehow building a matching rank by saying that 85% of the characters in "The Heart Center of Indiana" match "Heart Center of Indiana". There are thousands of names in each list, and I would very much not like to have to manually try to spot them.
I doubt there is a direct solution to my problem, so any tips on how I can make a translation table is aoppreciated.
Thanks,
David
View 4 Replies
View Related
Mar 5, 2006
Hello All,
For those who are interested in Approximate String Matching or those who could use these algorithms; I have a complete
suite of Approximate String Matching algorithms written in Visual Basic in an Access database.
In 2004 I decided to jump into the world of Fuzzy Matching with both feet.
As it is, I am working for a company that deals with names, addresses, etc. very intensely. It is a fair sized company
that uses Access on a grand scale. Since I am an Access programmer, I work in an Access gold mine!
I knew that if I could get a good handle on Fuzzy Matching, that when I hit the right person at the right time, the
company could greatly benefit from my research on Fuzzy Matching. The right time and the right person are not here yet.
Nevertheless, since I have reaped much free source code and information from the Web, it is now time to return the
favor.
I developed a package that is sort of a demo/tutorial on Approximate String Matching algorithms in Access that is very
robust in Fuzzy Matching. It would overtax the post in this forum for me to include it in a post.
To summarize, it works with the basic name - Last, First, and Middle. It has a user interface that allows a user to
type in what would be a good name and what would be a questionable name to resemble the good name. The weighted results of all the various algorithms can be chosen, or an individual algorithm can be chosen to display how closely the names match.
In addition, it has a table of 17,295 known good names with unique ID numbers as a reference table, and table of 1200
morphed names that are typical of names entered in a database with no input conventions. These morphed names have typos, transpositions, variations on maiden names, etc. 1200 good names were selected for alteration and the unique ID of each original good name was stored in the table with the altered names to determine the accuracy of the matching
process.
The morphed names were compared to the known good names in a query with an approximate join using the suite of
algorithms to determine match percentage. The altered names, the ID number of the original good name, the ID number of the name it matched to, and the match percentage were stored in a results table to determine the results of the matching run.
These tables were used to test and tweak the algorithms by comparing the morphed names with the known good names. The results of 1322 names were saved to a results table with match scores.
The matching process was executed in a query with an approximate join using the suite of algorithms.
The match results:
Total Approximate Matches: 1188
(Recall) Precision Pct: 99.00%
Total Unmatched Names: 12
Unmatched Pct: 1.00%
Total Other Matches: 134
Other Matches Pct: .77%
The tables are accessible in the database, so anyone can run their own tests. The interface is set up to accommodate this as well.
The algorithms used: Dice coefficient as a threshold algorithm, Levenshtein Distance algorithm, Longest Common
Subsequence, and the DoubleMetaphone. The names were passed to the algorithms by way of the bigram model.
I will email it to anyone who requests it.
It is in two platforms, Office 97 and Office 2000 as FuzzyMatching97.zip (692 KB) and FuzzyMatching2k.zip (721 KB).
The zip files include ApprxStrMatchingEngine97.pps or ApprxStrMatchingEngine2k.pps respectively, StrMatching97.mde or StrMatching2k.mde respectively, IEEESoundexV5.pdf, and VBAlgorithms.txt.
IEEESoundexV5.pdf is an abstract about Approximate Sting Matching that fired my curiosity about the subject, and
pertains to the package.
VBAlgorithms.txt contains the entire suite of algorithms in Visual Basic extracted from the MDB modules.
The PowerPoint presentations describe the workings of the MDE and give a good overview of Fuzzy Matching.
View 14 Replies
View Related
Feb 2, 2005
Hello,
My problem is rather complicated and I am not sure if Access is even capable of addressing it. As I said, this is a bit tricky and I understand if no one is willing to tackle it, however, I would really appreciate it if someone could tell me it is impossible if that is the case. Thanks in advance.
I have attached a table to better explain my dilemma.
I would like to use the information in the “Category”, “Range Start” and “Range Stop” fields to generate new identifiers for each record in the table. The simplest criteria would be to assign the same novel identifier to two records if they have the same values in all of “Category”, “R. Start”, “R. Stop” (This is the case for the first two records.).
I am able to use this approach but would much rather use a more sophisticated set of criteria. Specifically, to be assigned the same ID two(or more) records must:
A) Belong to the same category.
B) Their ranges must overlap by more than (x)(Where x is some amount of overlap). E.g. Records 3 and 4 should be assigned the same ID because their categories are the same and their ranges overlap by 333 (13222-12889).
C) Finally, if A is satisfied and B is not then the then records could be assigned the same identifier if the difference between their ranges is less than some value (y). E.g. Records 5 and 6 should be grouped because A) is satisfied and their ranges are only 5 apart -> (119-300)…(305-700)
There is no limit to the number of records that may be assigned the same identifier, provided they satisfy criteria A+B or A+C.
Many thanks,
Matt
View 12 Replies
View Related
Apr 9, 2007
=IIf([Text34]<=2644,0,IIf([Text34]<=7164,650,IIf([Text34]>=242506,22000,[Text34]*0.0907194)))
The above formula works as is in the field I have it in, but need it performed only if [Label5] is marked yes. I guess what I need is what goes in front of the above formula. I've looked through the forum, but it is so huge I had no luck finding what I needed.
If [Label5] is no, I need it to go to [Label6] and if [Label6] is yes, perform another calc like the one above. If [Lable6] is no, I need an error message.
Hope this is clear. Any help is greatly appreciated.
Thanks.
View 3 Replies
View Related
Sep 15, 2005
Hi all very simple question i'm sure but had a look through the forums and couldn't find anything.
On a form i have 2 buttons, one for new data and one for editing data. When either of these buttons are clicked a few text boxes pop up and immediately display data (The first record of the recordset). For the edit button this fine, however how do i get the text boxes to display a new record and not allow the user to head backwards through the recordset only onto a new record??
Thanks in advance
View 4 Replies
View Related
Jan 31, 2008
Hi everyone,
I have made a form for our database and I would like to have a .gif image display when a certain checkbox is checked. Any idea how to do this?
Thanks
PS - sorry if this is a noob question...I don't use access much
View 4 Replies
View Related
Jul 29, 2005
Hi
I know this sounds stupid but on my database with user-level security, i have somehow managed to remove administer rights from all users , and do not know how to change it back, if it is even possible.
I think what might have happened is it was stored on my USB drive and i switched computers and opened the db, would that have affected it? :confused:
Is there an easy way out of this or am i screwed? :eek:
thanks, ian :)
View 5 Replies
View Related
Aug 29, 2007
I have been following a text book to try and secure a database, i set up the Work Group Info File, allocated a password, now even when i want to start a completley new database i have to enter a password.........
AND when i set up the password i must have enetered it wrong now i am completely locked out!!
Is there any way to fix this i cant do anything!! I cant even start on a completely new databse!!
Please help
View 8 Replies
View Related
Nov 28, 2005
First Post - please be gentle :)
I may be missing something here, but can any one help?
I am using a Iif statment in a query to filter records as follows:
If([value from a form]= "all holidays",("weeks hols" or "days hols"),"not a holiday")
This is returning a to complex to calculate error - I think it is a Syntax error but could be wrong
but if I enter The string "week hols" or "days Hol" as the criteria without the Iif statment that works fine.
Thanks Dean
View 5 Replies
View Related
May 4, 2006
Can anyone help?
I have a table with the following:
Booked with a y/n field
Person Name with a text field
So...
Yes(True) Jim
Yes(True) Jim
No(False) Jim
What I need is to be able to show a query that shows if the checkbox is ticked (True) and the Name is Jim total up how many true items there are. So from the above I can see that Jim has 2 true items. I would then like this shown in a text box is this possible?
Also, it is not always going to be a person called Jim so... (From above)
Yes(True) Jim
Yes(True) Jim
No(False) Jim
Yes(True) Jack
So how would this go on a query in a sub form? So Name Jim would show 2 and Jack would show 1? At the moment is is grouping the name and I dont want that.
Any ideas
Cheers
View 4 Replies
View Related
Sep 22, 2006
This should be really simple, but I am stumbling on the criteria. I have a combo box which returns "Y" or "N". I'm using this value as criteria for a field called [Planned=Y/N]. This field stores either a "Y" or a "N" to indicate that a network outage was planned or not. If the combo box is "Y" I want to return all values(Y and N). If the combo box is "N" I only want to return values of "N". I've tried the following in the criteria without the desired affect:
IIf([Forms]![frmOutagemenu]![cboflag]="Y","","N") - only returns records when "N" is selected.
IIf([Forms]![frmOutagemenu]![cboflag]="Y",null,"N") - only returns records when "N" is selected.
IIf([Forms]![frmOutagemenu]![cboflag]="Y",In("Y","N"),"N") - too complicated for Access to decode.
Is there another way to return nothing for the criteria when "Y" is selected?
View 3 Replies
View Related
Nov 6, 2006
I run various queries on a daily basis for multiple date ranges (previous day, week to date, month to date, and year to date). The below criteria allows me to get WTD numbers but it has a flaw. When I run the reports on Monday, this criteria gives me Sunday and Monday's data when I actually want the previous week's data. Does anyone know of an iif statement that basically, says, "If today is Monday, give me last week's data, else give me wtd of the current week?" Right now, I manually change the criteria on Monday morning to hard code the dates and then revert to the formula on Tuesdays but I need to have this completly automated because there are a large number of queries and I don't have time to change them all. Thanks for the help!
Between Date()-Weekday(Date()-1) And Date()-1
View 2 Replies
View Related
Oct 18, 2006
Hi! When it rains, it pours, right? I'm wondering if any of you know of a way to count true statements...
What I mean is, I have a query where I have a series of 5 different OR statements, meaning I want to see records with either a min. ed. number, or a years of experience number, etc...
The query returns every record with at least one of the criteria being met. What I need is to count the statements that are true for one record. Let's say I have someone who meets all of the OR criteria, I need a way to count the number of criteria that they met. Is there a way to do this? Maybe with a crosstab query??? Thanks!!
KellyJo
View 3 Replies
View Related
Jul 12, 2005
undefined
Hi, can anyone help? Like an idiot I veered away from my intention to put a password on an Access database which holds only a table and a few queries and explored other security options. I now cannot get in to the database at all and get a message telling me that I do not have the necessary acces srights and to consult my administrator. When I look at the properties, I am shown as the administrator, which makes sense but despite trying various, desperate things, I cannot get back in to take the security off. Needless to say I did not create a copy first, so have learned a lesson the hard way. Any advice gratefully received.
View 3 Replies
View Related
Jul 22, 2005
i have this database with tables i can't access, so i had to import the data into a new database , given the size of the new database JoeCruse (form this board) pointed out that it could be that the front end is separated form the back end. and i can't find the front end anywhere
i want to press F11 and see the tables and so forth open up when i launch the original db. how do i go about doing that.
View 2 Replies
View Related
Oct 10, 2005
:eek: security levels were set on a database using the wizard, unfortunately the person who set the security did not print out the sheets with the WID etc on it, this person is now unable to open access at all from their pc it asks for a password which the user does not believe they set or if they did set one it was their standard pc log in, however the database and access can be opened from any other pc on the network......can anyone out their help...thanks
View 2 Replies
View Related
Mar 12, 2007
Are all mde files locked so that you cannot edit or see design view for forms etc?
Are there any tools out there that can unlock an mde database?
Thanks,
Dave
View 1 Replies
View Related
Apr 18, 2007
I have a database that I password protected. Somehow, in the process of applying the password, the file became corrupted and now I am getting the following error message:
"This database is in an unexpected stat; Microsoft Office Access can't open it.
This database has been converted from a prior version of Microsoft Office Access by using the DAO CompactDatabase method instead of the Convert Database command on the Tools menu (Database Utilities submenu). This has left the database in a partially converted state."
Does anyone know what this error is and how I can retrieve my data?? I have tried to import the files into a new database, convert the database into a different version and compact and repair. Nothing has worked. I have looked into recovery tools and two of them do get me into the database and let me see some of the data, however, the programs are holding my information hostage until I purchase the software which is running around $300.00. Any ideas???
View 6 Replies
View Related
Jul 3, 2007
I recently split my database and created an MDE file. Users were given a copy of the MDE file and the BE is in a shared directory on a server. There are only two users at this point in time inputting data into the database (there will be at least a dozen more in the near future), but every so often one of them experiences being unable to input data from their Form because of this lock condition. Sometimes the condition will go away (if they wait long enough) and they can input data again. Sometimes it's User A experiencing the lock, sometimes it's User B. I thought splitting would alleviate lock issues, but it doesn't seem to be the case for me. Could this be a "permissions" issue on the shared directory where the BE is located or some security setting within Access (or both)?
Thanks in advance for everyones help!
Michael
View 2 Replies
View Related
Nov 3, 2007
I copied Odun's post below to describe my problem. I'm having the same problem. I can't even creat a new blank database without being prompted for my user name and password, which aren't working.
Any suggestions would be very much appreciated.
Thanks,
Mike
-------------------------------------------------------------------------
#1 02-13-2006, 04:33 AM
odun
Registered User Join Date: Apr 2005
Posts: 108
can't log on to database
Hi all,
I was playing with passwords for one of my access db.
I tried opening the db with the password, but it won't work. So, I thought I forgot the password. I checked some posts on this forum that helped in retrieving the password and it's the same that I have been trying. I am not sure if the Name is correct, is there a way to retrieve the log on name?
I also noticed that when I try opening any other db on my system, it asks me to log on, I though I was only applying a password to one file.
Please help
Thanks!
odun
View Public Profile
Send a private message to odun
Find all posts by odun
Add odun to Your Buddy List
--------------------------------------------------------------------------
View 1 Replies
View Related
Nov 26, 2007
Hi
Is there anyway of returning the menus that I removed from the Tools > Startup options back?
It looks like I have locked myself out of my FE!!!!
Thanks,
B
View 6 Replies
View Related
Dec 11, 2007
Hello out!!
Is a moment of desperation! I created a security group or something (dont know what i was thinking!), and now there is no way to get into my application!!!! It says to contact with the administrator, but I'M the administrator!!!!
Any way to get the scripts minimun from the applications?? The classes, the modules??? God!!!! My last backup was 4 days ago!!!! I can't loose everything!!
Message:
you do not have the necessary permission to use myapplication.
:confused::confused::confused::confused::confused: :confused:
View 2 Replies
View Related