Advertisement

09.27.2007 at 09:07AM PDT, ID: 22857069
[x]
Attachment Details
[x]
The Solution Rating System

With so many solutions, how can you tell which solutions are most likely to help you and which ones are not? To provide you with a tool to use, we rate our solutions based on various elements that most accurately determine if a solution is a quality solution. To explain what factors affect the solution rating, here are the elements we take into consideration when formulating our solution rating.

  • The Grade of the Solution
  • The Zone Rank of the Expert Providing the Solution
  • The Number of Author and Expert Comments
  • The Number of Experts Contributing
  • The Feedback of the Community

Your Input Matters
Because of the way the system is set up, the most important variable in this equation is you. As a member of Experts Exchange, you are able to cast your vote on the quality of the solutions in regard to how complete, accurate, helpful and easy to understand each solution is. When you provide your feedback, each rating is adjusted accordingly. So, if you see a solution that has a poor rating that you think is a good solution, let us know by rating it. As you do, the rating will be adjusted and will become more accurate for other members of our site.

If you have any suggestions that you would like to make for our rating system, please ask a question in the Suggestions Zone of Community Support.

Thank you!

Locking single records to prevent further modification

Tags: record, access, modification, prevent
I have created a relational database for electronic medical records.  I need to create a script that will lock the record containing visit notes from further modification, to secure the data.  I have created this in FileMaker 9.

Essentially, I want to create a button that will run the script to prevent any further modification of the specified record, regardless of access priveleges.
Start your free trial to view this solution
Question Stats
Zone: Software
Question Asked By: Dr_jana_ND
Solution Provided By: lesouef
Participating Experts: 3
Solution Grade: A
Views: 18
Translate:
Loading Advertisement...
09.27.2007 at 02:21PM PDT, ID: 19974866

Rank: Genius

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
09.27.2007 at 08:01PM PDT, ID: 19976235

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
09.28.2007 at 12:05AM PDT, ID: 19976874

Rank: Genius

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
09.28.2007 at 08:18AM PDT, ID: 19979316

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
09.28.2007 at 08:46AM PDT, ID: 19979546

Rank: Genius

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
09.28.2007 at 08:09PM PDT, ID: 19982848

Rank: Master

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
09.28.2007 at 09:25PM PDT, ID: 19982958

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
09.29.2007 at 10:35AM PDT, ID: 19984616

Rank: Master

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.01.2007 at 01:22PM PDT, ID: 19993870

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.02.2007 at 12:11AM PDT, ID: 19996649

Rank: Master

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.02.2007 at 12:14AM PDT, ID: 19996665

Rank: Master

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.02.2007 at 12:42AM PDT, ID: 19996769

Rank: Genius

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.02.2007 at 08:39PM PDT, ID: 20003867

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.02.2007 at 10:13PM PDT, ID: 20004114

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.08.2007 at 03:04PM PDT, ID: 20037309

Rank: Master

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.08.2007 at 08:05PM PDT, ID: 20038353

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.09.2007 at 01:52AM PDT, ID: 20039351

Rank: Genius

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.09.2007 at 08:05AM PDT, ID: 20041562

Rank: Master

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.11.2007 at 09:45PM PDT, ID: 20063123

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.12.2007 at 12:04AM PDT, ID: 20063457

Rank: Genius

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.12.2007 at 06:51AM PDT, ID: 20065313

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.12.2007 at 09:48AM PDT, ID: 20067189

Rank: Genius

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.13.2007 at 10:36AM PDT, ID: 20071511

Rank: Master

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.13.2007 at 11:11AM PDT, ID: 20071589

Rank: Genius

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.15.2007 at 08:10PM PDT, ID: 20082985

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
10.16.2007 at 08:44AM PDT, ID: 20086527

Rank: Master

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
01.09.2008 at 02:49AM PST, ID: 20616922

All comments and solutions are available to Premium Service Members only.

Start your 7-day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
 
Loading Advertisement...
Microsoft
  • Internet Protocols
  • Applications
  • Development
  • OS
  • Hardware
  • Windows Security
Apple
  • Operating Systems
  • Hardware
  • Programming
  • Networking
  • Software
Internet
  • Search Engines
  • File Sharing
  • WebTrends / Stats
  • Spy / Ad Blockers
  • Web Browsers
  • New Net Users
  • Web Development
  • Chat / IM
  • Anti Spam
  • Web Servers
  • Anti-Virus
  • Email Clients
Gamers
  • Tips
  • Online / MMORPG
  • Puzzle
  • Emulators
  • Action / Adventure
  • Role Playing
  • Consoles
  • Game Programming
  • Strategy
  • Sports
  • Misc
  • Computer Games
Digital Living
  • Hardware
  • Automotive
  • New Net Users
  • New Users
  • Software
  • Digital Music
  • Gaming World
  • Home Security
  • Apple
  • Networking Hardware
Virus & Spyware
  • Vulnerabilities
  • IDS
  • Encryption
  • Anti-Virus
  • Operating Systems Security
  • Software Firewalls
  • WebApplications
  • Cell Phones
  • Operating Systems
  • Internet
  • Hardware Firewalls
Hardware
  • Displays / Monitors
  • Handhelds / PDAs
  • Components
  • Peripherals
  • Laptops/Notebooks
  • Servers
  • Misc
  • Apple
  • Embedded Hardware
  • Networking Hardware
  • Storage
  • Desktops
  • New Users
Software
  • System Utilities
  • Industry Specific
  • Network Management
  • Photos / Graphics
  • Page Layout
  • VMware
  • Misc
  • Web Development
  • OS
  • CYGWIN
  • Voice Recognition
  • Virtualization
  • Message Queue
  • Quality Assurance
  • Security
  • Firewalls
  • MultiMedia Applications
  • Development
  • Database
  • Office / Productivity
  • Business Management
  • OS/2 Apps
  • Server Software
  • Internet / Email
ITPro
  • OS
  • Storage
  • Encryption
  • Operating Systems Security
  • Apple Hardware
  • Laptops & Notebooks
  • Servers
  • Networking Hardware
  • Peripherals
  • Devices
  • Displays / Monitors
  • WebTrends / Stats
  • Search Engines
  • Firewalls
  • Web Computing
  • WebApplications
  • IDS
  • Vulnerabilities
  • Email Clients
  • File Sharing
  • Spy / Ad Blockers
  • Web Browsers
  • Web Servers
  • Networking
  • Anti-Virus
  • Consulting
  • Chat / IM
  • Anti Spam
Developer
  • Web Servers
  • Web Browsers
  • Game Programming
  • Dev Tools
  • Industry Specific
  • Office / Productivity
  • Database
  • CYGWIN
  • Web Development
  • Search Engines
  • File Sharing
  • WebTrends / Stats
  • Programming
  • Content Management
  • Application Servers
  • Protocols
Storage
  • Removable Backup Media
  • Storage Technology
  • Servers
  • Grid
  • Remote Access
  • Backup / Restore
  • Misc
  • Hard Drives
OS
  • Miscellaneous
  • Security
  • Development
  • Linux
  • VMware
  • MainFrame OS
  • Unix
  • Apple
  • OS / 2
  • AS / 400
  • BeOS
  • Microsoft
  • VMS / OpenVMS
Database
  • Oracle
  • Miscellaneous
  • MySQL
  • Software
  • Sybase
  • Contact Management
  • PostgreSQL
  • Data Manipulation
  • Clarion
  • InterSystems Cache
  • Siebel
  • MUMPS
  • OLAP
  • SQLBase
  • SAS
  • GIS & GPS
  • 4GL
  • Berkeley DB
  • DB2
  • Informix
  • Interbase / Firebird
  • FoxPro
  • Reporting
  • LDAP
  • Filemaker Pro
  • MS SQL Server
  • dBase
  • MS Access
Security
  • Misc
  • Web Browsers
  • Software Firewalls
  • Operating Systems Security
  • File Sharing
  • Spy / Ad Blockers
  • Vulnerabilities
  • WebApplications
  • IDS
  • Anti-Virus
  • Encryption
  • Anti Spam
  • Email Clients
  • VPN
  • Chat / IM
Programming
  • Editors IDEs
  • Installation
  • Handhelds / PDAs
  • Multimedia Programming
  • System / Kernel
  • Automation
  • Algorithms
  • Game
  • Signal Processing
  • Project Management
  • Open Source
  • Database
  • Misc
  • Languages
  • Processor Platforms
  • Theory
Web Development
  • Scripting
  • Blogs
  • Web Servers
  • Software
  • Search Engines
  • Web Graphics
  • Web Services
  • Images
  • Internet Marketing
  • Images and Photos
  • Components
  • Document Imaging
  • Web Languages/Standards
  • Illustration
  • WebApplications
  • Fonts
  • WebTrends / Stats
  • Authoring
  • Digital Camera Software
  • Miscellaneous
Networking
  • Protocols
  • Apple Networking
  • Network Management
  • Message Queue
  • Application Servers
  • Content Management
  • File Servers
  • Email Servers
  • Misc
  • Java Editors & IDEs
  • Wireless
  • Networking Hardware
  • Backup / Restore
  • System Utilities
  • ISPs & Hosting
  • Web Servers
  • Storage Technology
  • Removable Backup Media
  • Servers
  • Web Computing
  • Broadband
  • Grid
  • OS / 2
  • Novell Netware
  • Unix Networking
  • Windows Networking
  • Security
  • Telecommunications
  • Operating Systems
  • Linux Networking
Other
  • Lounge
  • Business Travel
  • Community Support
  • New Net Users
  • Philosophy / Religion
  • Math / Science
  • Miscellaneous
  • URLs
  • Expert Lounge
  • Politics
  • Puzzles / Riddles
  • Automotive
Community Support
  • Suggestions
  • New to EE
  • New Topics
  • CleanUp
  • Announcements
  • General
  • Feedback
  • Input
  • EE Bugs
 
09.27.2007 at 02:21PM PDT, ID: 19974866

Rank: Genius

do you have many fields in yr layout?
my idea is to edit using a custom dialog box driven by a script, or have 2 layouts, one where you can edit and a 2nd one which has fields access disabled. because filemaker cannot make a layout read-only by scripting.
 
09.27.2007 at 08:01PM PDT, ID: 19976235
Greetings Lesouef, thank you for your response..  There are 8 fields in one layout and 3 in another that need to be locked.  I was thinking of a script attached to a button in each layout, that would select each field and change the access attributes?  I don't know if this is possible.

My scripting knowlege is basic, and has been learned via trial and error.  I appreciate the help with this!
 
09.28.2007 at 12:05AM PDT, ID: 19976874

Rank: Genius

no you can't change that by scripting.
so you can use a custom dialog where you have 3 fields and use a extra form for the 8 fields layout.
 
09.28.2007 at 08:18AM PDT, ID: 19979316
Hmm..  I'm not sure how that would work.  I was wondering if I could write a script that would convert that record to a PDF, and append additional records to have a non-modifiable version of the records?  An expanding PDF file?  Perhaps that would be easier?
 
09.28.2007 at 08:46AM PDT, ID: 19979546

Rank: Genius

I don't think so... a pdf file will become very big this way
 
09.28.2007 at 08:09PM PDT, ID: 19982848

Rank: Master

We have a number of data structures that we protect from modification. We do it two ways one is to have an audit trail so we can follow the changes. The other completely locks the data so it can't be modified unless you log in with full priviledge and remove the lock. I think you are looking for the second, I will elaborate a bit and you tell me if you want me to provide the approach we use:

We create two layouts for each entry screen, one that is made up of the actual fields purely for admin access and debugging and the other that uses only globals. We place a submit button on the screen which fires a script that decides if it can save new data over the old data. We creat our own navigation buttons that move between records and copy the actual data to their global counterparts so that they can be displayed on the screen. If the user has the authority to modify the data they get sent to another screen "the edit screen" where they again make entries into globals and if they have the appropriate authority to run the submit script then the data can be updated by copying all the global entries to the actual data table.

Because we are creating secure systems that have electronic signatures, we embed a checksum into the audit trail that assures us that the person being recorded as making the transaction is in fact who they say they are. We also retain the transaction for purposes of audititing changes.

This is alot to say here, I just wanted to give you a taste of the process. Let me know if I can help further.
 
09.28.2007 at 09:25PM PDT, ID: 19982958
Hi jvaldes,

My goal is to make sure my medical database is HIPAA compliant, and that requires making certain that if the records get modified, there is a way to monitor that, or even better make it unmodifiable once submitted as final data.  I'm very interested in your solution.  It was over my head, but I'm willing to work at it.  I want a solid product with a reliable database.

I appreciate any and all help I can get!  I've spent the last 6 months building this structure, and do not want to blow the security aspects.

Bring on the assistance ;-)  I am very impressed with the helpful nature of this community!
 
09.29.2007 at 10:35AM PDT, ID: 19984616

Rank: Master

HIPPA compliance is similar but a subset of Title 21 Partt 11 which is what we are meeting. So I think I can give you some guidance but this is not just a question. I think you have a number of steps to go through:

1. How do I input data without modifying the current data and then pass an authentication test that verifies rights? - This can be done by creating a screen based on globals with a submit button that you can add to the screen to run a script that would copy the global values to the record values. This is a good time to add an audit trail so that you can record the activity.

2. How do I create the same functionality on your global screen as what exists in FM navigation tools? you need to add navigation tools that copy the information into the globals screen as you move through the records. You also need to build a find routine that finds in the real data, then copies the data to the globals screen to eliminate the risk of changes

3. How do I create an authenticated record that I know has not been changed? This is a tougher question, we have developed a public domain MD5 script with custom functions that produces this result. I think our company (Alliance Medical Products) would provide to you with the proper license agreement (no cost)

Now that you have an approach defined that will get you to HIPPA requirements you need to let me know what specifically you need help with. If you need an example I would prefer to work on your database. You can create a clone and put some fake info in it so I can see what you are trying to do...
 
10.01.2007 at 01:22PM PDT, ID: 19993870
Thank you again for being so helpful!  I'm in over my head here. I'm not sure that I understand what you mean by globals.  I can see I have more reading to do...

  I will be happy to send you a clone of my database with fake names etc in records.  I will send it to you tonight, when I have access to my laptop.  How can I best send it to you?

Best,  Dr_Jana_ND
 
10.02.2007 at 12:11AM PDT, ID: 19996649

Rank: Master

Upload the Clone file by going to

http://idisk.mac.com/juanv-Public

The user name is = public
Password = hippa07

I will close the site as soon as you upload, I will need a day or so to look at the file. Could you enter some mock data so I can see what your intensions are?
 
10.02.2007 at 12:14AM PDT, ID: 19996665

Rank: Master

lesouef,

I sent you and email to the email you have in your profile, I am surprised I didn't hear back from you,

my email jvaldes[at]amp-us[dot]com
 
10.02.2007 at 12:42AM PDT, ID: 19996769

Rank: Genius

I did answer on sunday, probably trapped in yr anti-spam filter.
I have sent it again without the inline image in my signature (often detected as a spam).
Let me know of you don't get it today.
 
10.02.2007 at 08:39PM PDT, ID: 20003867
jvaldez, thank you!  I will set up the clone with enough data to see what I intend.  I will up load it to you wednesday.  best,  dr_jana_nd
 
10.02.2007 at 10:13PM PDT, ID: 20004114
Hello jvaldes,

I've uploaded the database clone and a brief explanation of what I've done.  Holler if you have questions!
 
10.08.2007 at 03:04PM PDT, ID: 20037309

Rank: Master

Dr. Jana,

I looked at the clone got to the same location above to download the basic database with the needed functionality.... Use the same username and password

After reviewing your database,  I have a couple of questions, There are three Hippa requirements that I think you desire to meet.

Number one is access control, I noticed that you are attempting to manage that in your database. I recommend that you use the Filemaker Privileges  to manage that. Create the user accounts in File=>Manage=>Accounts and Privileges, Then create the proper account types, ex. Minimal privileges may not allow a person to enter any data but they could view it (Read-only) on the other hand who ever is responsible for managing the database would have full access. If you want to disallow certain users from seeing specific data, then use a script to send you to the layout instead of the Go to Layout command and give access to only those that you want to allow access to that screen. This method combines with menu controls will prevent unauthorized access to the data.

Number two; Audit  trail of who has made changes to the data , when, and the reason for the change. I have an example of how to do this that should provide the insight you seek.

1)      Create a global field to match every field in your database; ex. LastName would have a global twin g_LastName, etc.
2)      Copy the Input screen layout and call it the Input screen
3)      Replace all the fields in that screen with the Global storage equivalents
4)      Add a submit button to the bottom of the screen, that will execute a script to copy the information from the globals to the actual data fields.

To navigate in this new world of globals you need to recreate the navigation tools that are part of filemaker, for example you need to develop a script that will change the current global information to match the next or previous record depending on the script you are running. By doing this you are shielding the user from the data, so that they cant arbitrarily modify the data. Take a look at the exmple.

In order to record who did what to the data, you should create a database called Audit trail that has the following fields: as auto enters

Time Stamp  Autoenter field
Date Stamp  Autoenter field
Username  Autoenter Calculation get(username) if you are using an external server use get(accountname)
Transaction Description  This should be calculated by the Submit script and put in a global variable ($$transDesc) then autoentered as a calculation =$$TransDesc
Authentication String  Autoenter Calculation as well, I will discuss this in section 3 but it would be reading a different global variable, lets say $$AuthString

Every time you submit new data through your submit script you will compute the data that goes in the variables and create a new record in the audit trail database and that will create a completed record for you.

So when you create a script to delete a record, or change a record you only need to populate the global variables with your data and create a new record in the Audit trail database and wa la you have an audit trail.

And last how do you ascertain that the information is indeed authentic and that in fact the person who is listed as the transaction owner is actually who did it. I have added my authentication routine which is not for public use as it is copyrighted (you have a perpetual license to use it, if you provide you personal data via email to me, and I return a notice of perpetual license to you.(which I will)

The authentication script that I have developed will return a string of data  that  when saved with the audit record will guarantee that the data is authentic, with less than 1 in 64 billion chance that it has been changed and the change is not detectable.

Remember the use of Filemaker security is very broad and it would not be in your best interest to rewrite that.

Let me know if I can help further.

Login to the file with account admin password = admin
For unrestricted access
Login to the file with account test password = test
To see access control implemented, you will see that you can go to and from the audit trail on this account but you cant submit new data. That can only be done in the admin account&

Note how I took away access to the script that submits the data for group of users or a specific user. The granularity of security is so fine that I think you are much better off using this approach than writing your own.

If you have a domain or LDAP controller you can manage people by rights on the domain controller rather than in the application. This adds flexibility that you should consider if you intend to serve this application under a filemaker server product&.
 
10.08.2007 at 08:05PM PDT, ID: 20038353
Let everyone know who reads this, that YOU ARE A GOD.  Thank you for giving me such detailed feedback and advice.  I followed most of it.  I will work on implementing it, and get back to you if I can't get it to work for some reason.  It will take me a few days to figure some of this out.  

I'm learning far more filemaker than I ever thought I would!  I am a solo practitioner, and will be the only one using this, but I do have ideas of selling it as a template in the future.  If knowing that I may sell this template down the road prevents me from using your authentication routine, I understand.  

Let me know if it is still kosher to use it, and under what circumstances/limitations.  I will send you my personal details via email.  Let me know what you require.

Thank you again for your help.  Best regards,  Dr_Jana_ND
 
10.09.2007 at 01:52AM PDT, ID: 20039351

Rank: Genius

Just a few comments on jvaldes's advices, no idea if that would be compliant with yr Hippa specs, but feel like it may simplify a few things.
- about preventing access to a form by using a layout a globals, then tranfered to real fields with a submit button, this is hell of a work if you have 100 fields. I use a dummy table, identical to the real one, then the "submit' imports that to the real table. temp table record is then deleted. far quicker, saves many lines in the script.
- about accounts, I would keep my own table in // with the filemaker ones to keep extra information about users, like last login date/time, etc... and my own script to create/delete internal and filemaker accounts at the same time. required to detect filemaker errors proprely to avoid bad sync in between the 2.
- about the audit trail, may we worth you have a look at the scriptlog custom function of this guy in australia who is a genius to me (though this approach is really using fm on the edge, which leads to something very few people can maintain): http://www.nightwing.com.au/FileMaker/demos8/demo809.html (requires fm advanced).
this could be a good replacement for yr audit trail thing? requires very little records to implement, drawback > leads to huge log files, but the system has a max size implemented...
 
10.09.2007 at 08:05AM PDT, ID: 20041562

Rank: Master

I like the dummy table idea, I will implement it in the future, but the audit trail that you recommend will not address electronic signature (compliant with 21CFR part 11 of the regs. Treaceability has to be to the action not the field... Also the audit trail log must be unchangeable by all levels of authority, so it needs a lock that can't be overcome. I have created on based on the MD5 checksum.
 
10.11.2007 at 09:45PM PDT, ID: 20063123
Hello Again!

I'm going blind creating all of the lines needed to script setting global fields to a target field.  I'm intrigued by the possibility of importing a record from a dummy table into an identical target table using a script.  I've tried to figure out the syntax, but am getting lost.  I don't know how to specify the source table.  I also like the idea of importing a single identifier field (one with an autoenter serial number) and using a relationship to look up the rest of the fields.

Not sure which route ends up being the most elegant.  Thank you jvaldes for telling me how to use the global fields..  I am slowly setting up all the scripts needed.  Free office visits to my clinic for all your help ;-)

Regards,  Dr.Jana.ND
 
10.12.2007 at 12:04AM PDT, ID: 20063457

Rank: Genius

hope jvaldes is not living far from yr clinic! after free T-shirts at EE, one can get free medical service!

how to self-import?
easy way, import from yr file currently open by selecting it the way you would do for an external file.
smart way: create variable say $file = get (filename) then in the import dialog winodw where you specify the fileref, type manually the variable name.
I use this so often that I simply use a global one ($$filename) created in my startup script which I use everywhere afterwards.
You could also use the single identifier field method from a dummy table by creating a relationship in between the dummy table and the real one, based on the serial nb on the dummy side, and a global field on the real table side which will contain a temp serial nb. enter data in the dummy table, when validated, copy the serial nb you got there, create a new record in the real table, paste the serial nb field there, and yr auto-entered (from look-up) fields will be populated without importing. probably the best, taking advantage of both ways.
 
10.12.2007 at 06:51AM PDT, ID: 20065313
Hmm..  I think I will try it both ways and see which is faster..  Thanks for the tip!
 
10.12.2007 at 09:48AM PDT, ID: 20067189

Rank: Genius

probably not much difference...
auto-entered field is smarter, but when you have many fields to change to become auto-entered type (which may be a problem in another situation if this record can also be created manually from a layout), you'd prefer the import way as no field definition has to be changed, and no side effect is expected in any other situation, especially if the solution is already in use.
Accepted Solution