LaRetta Posted November 2, 2002 Share Posted November 2, 2002 I need to SET a group of records on field TYPESEQ. Once set, this field TYPESEQ (text) will be an auto-enter (calc) using a global & 2-digit sequential number so new records are auto-assigned and the sequential number portion will increase by 1. But I'm a bit confused on how to indicate +1 through a series of records in this SET script first, to bring my existing records up to speed. What I currently have is: gType & Right("00" & 01,2) > is this how I list it if I want to begin with 01? But then, how do I indicate that I want to increase only the NUMBER portion by 1 for the next record? Use Right again? It looks like I should do this in two steps and COMBINE the results to set each field (gType & (number result). If I had the 'number' portion separate, I could use PreviousRecord(number)+1. If I tried to use PreviousRecord(TypeSeq + 1) it would also grab the global. I hope this is making sense; maybe I also need to loop (which I've never done). Again, for the millionth time, I call upon the forum to help me determine the proper scripting sequence. And, I really AM beginning to learn this stuff but not nearly quick enough to suit me Link to comment Share on other sites More sharing options...
CobaltSky Posted November 2, 2002 Share Posted November 2, 2002 First create a serial number field called 'Serial' with the 'auto-enter serial' option enabled, then reference that in your calc. Viz: gType & Right("00" & Serial, 2) This will work but, of course, will only be valid for numbers up to 99 Link to comment Share on other sites More sharing options...
LaRetta Posted November 2, 2002 Author Share Posted November 2, 2002 Oh, that's MUCH easier ... thanks, Ray! Yes, the number will max out at 24 so it's not a worry. And since, once created, the new number field SERIAL will 'take care of itself' by incrementing, I can just insert the FIELD Serial in the formula - gType & Right("00" & Serial,2) I'll still have to learn loops, but that will come later. Any old DOS folks out there? Loop appears to be the same principle as GOTO labels. Link to comment Share on other sites More sharing options...
LaRetta Posted November 3, 2002 Author Share Posted November 3, 2002 Well, for goodness sakes! "Using REPLACE, serial number option and with the "Update Serial Number in Entry Options" feature enabled" is certainly easier than having to write a SET script! AND, it was much faster than SETting through the entire db also! I like REPLACE! Link to comment Share on other sites More sharing options...
BobWeaver Posted November 4, 2002 Share Posted November 4, 2002 I used to like Replace, but it's dangerous in multi-user installations. If another user is editing a record when you use Replace, that record will be skipped. You can detect that with an If[status(CurrentError)=301] though. However, here is the scary part. If you have two users running a script that uses Replace on the same field in the same set of records, or an overlapping set of records, it is possible for one user to overwrite the other user's values with no error being generated at all. In fact, if you have two users on two computers with different processing speeds, it's actually possible for both users to overwrite some of each other records at the same time with no error generated. The only time that an error code seems to be generated is when the replace functions on both computers happen to hit the same record at exactly the same time (and even then I'm not sure you would get an error). So beware of putting Replace in a script that may be run by multiple users. Link to comment Share on other sites More sharing options...
LaRetta Posted November 4, 2002 Author Share Posted November 4, 2002 Thanks for that Bob! I'll also add that to my networking piece. This is for a data migration project and is being manually executed on a stand-alone system. I will keep that in mind for a multi-user environment, particularly if used in scripts! It DOES work great for some things, though, doesn't it! Link to comment Share on other sites More sharing options...
BobWeaver Posted November 4, 2002 Share Posted November 4, 2002 Absolutely. For data migration and other one time applications, it's a great time-saver. Link to comment Share on other sites More sharing options...
Recommended Posts
This topic is 7972 days old. Please don't post here. Open a new topic instead.
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now