This may be a toughie, I use Word to print out order forms for my shop, right now I use a stamp to give each one a unique number just for reference (you know the ones with the dials that updates whenever use). Anyways was wanting to somehow make a macro or something in Word that will automatically increment a order number on the form as I print them.
One option, of course, is to print the individual copies of the document, making the edits to the copy number between each print. This gets tedious, real fast. You may also want to utilize a sequential numbering field (as discussed in other WordTips) and make the number of copies equal to what you need to print. Thus, if you have to print 25 copies, you could simply copy the entire document (including the sequential numbering field), move to the end of the document, and paste it in another 24 times. This makes for a rather large overall document, however, and there are easier ways to approach the problem.
I created something like this for a demo and didn't have to use a script. If I remember correctly, I leveraged Workflow. Essentially, the form submission would trigger a very simple workflow that would look at the current counter value on a database table and increment it by 1. The next form would then start with a lookup that would grab that counter and put it into a read-only (or hidden) field. Rinse and repeat.
To recap, you use a DMax function to return the highest number in the Sequence and increment it by 1. You assign the incremented number to a control on your form and then immediately save the record. If your identifier includes additional information from the record, you use an expression that concatenates that information with the sequence number to display the full identifier.
If a sequence converges, then the value it converges to is unique. This value is called the limit of the sequence. The limit of a convergent sequence {\displaystyle (a_{n})}  is normally denoted {\displaystyle \lim _{n\to \infty }a_{n}} . If {\displaystyle (a_{n})}  is a divergent sequence, then the expression {\displaystyle \lim _{n\to \infty }a_{n}} is meaningless.


Ah, that’s the con – this works beautifully when you are in fact exporting data but when you are viewing the query’s output in a datasheet or a form, as you scroll around, Access will be re-evaluating the rows, including a call to the RowNumber(). But when it repeatedly calls RowNumber(), of course it keeps incrementing blindly, without any regards to whether a number was already generated for that row.
You can add a chapter number variable to your document. Like page numbers, chapter numbers can be updated automatically and formatted and styled as text. A chapter number variable is commonly used in documents that are part of a book. A document can have only one chapter number assigned to it; if you want to divide a single document into chapters, you can create sections instead.
The Renumber/Refresh List toolbar command is used to renumber an existing numbered list or to refresh a list after editing. For example if item 3. is deleted from a list by editing then you can use this tool to refresh the list. You can also use the Renumber/Refresh command to number or renumber a selection of list paragraphs with any chosen starting number.

### I have screen shots of what I have in my db, where can I send it to you (it is in word format) so that you can take a look at it to see what I am doing wrong. I took a screen shot of what is listed for the button and I took a screen shot of the text box Job No. I don’t know how to bound anything other than put the code behind the button and putting the Job_No in the code as you stated. I understand what you are saying, but I thought if I put the text box name Job No in the code behind the button then it would be bound to my table with the Job No field. Heeeelllllppppp!!!! I am sorry that I can’t seem to grasp this….but appreciate all of your help!

you'd need to use a before save macro. Something like the macro at the end - but it would run on every save, which may not be what you want. I use a macro that gets the invoice # and saves (it does several things). I added a button to the ribbon that calls a macro that runs several macros: Sub FinalizeInvoice() CreateInvoiceNumber CopyToExcel FinalCleanup ' this does the save End Sub This is an automated macro - but it will run every time the file is saved. Private WithEvents App As Word.Application Private Sub Document_Open() Set App = Word.Application… Read more »


Please tell me there is a way to accomplish this.  As stated, if two users launch the initial submission form with the lookup field populated with P1234 for example, the first user to submit get the number, and the second user now has started there purchasing with a duplicated/invalid number.  Can we increment the field on submission load?  Also, the ability to instead show the purchasing number on event completion doesn't work either, too bad.


Thanks for the quick reply, I think I’m a little confused by the Display aspect of this. Artifact ID is a primary key to the table I am working in and I need it to have a unique identifier that other people can search for. The previously adopted naming convention for this ID is that which I mentioned before, Collection Point ID plus a period and then a sequential number restarting at each new Collection Point ID i.e 2-1050.1, 2-1050.2, 2-1060.1 and so on. So I think I actually need to save this in the Artifact ID field. I realize this might be slightly redundant but I’m not sure how the display would work as far as searching for specific Artifact IDs in the future.
Now, what’s the deal with the UniqueKeyVariant parameter for the RowNumber() function? We are not even using it all! True, but if we didn’t, Access will call RowNumber() only once for an entire query and thus we get “1” for the entire dataset. That is a good way to save on CPU processing – why call Now() for each row? In this case, we want to go against this CPU-saving measure and ensure that the RowNumber() is in fact called once per row to generate a new number for that row. Thus, we pass in a parameter — a primary key of a table is a good choice for this purpose. So we get a nice sequential number generated all in the query with VBA function.
I would like to number a voucher book, i have place 4 vouchers on a page, the thing is that i want each of these vouchers to start with different number, 100, 200, 300, 400, and then i want to number them 99 times. The problem is that they have to be numbered only 1 per page, so that when i have printed them all i can easily crop them and staple them right up with having to go through it all.

Rush Flyer Printing offers sequential numbering printing services. We ensure that highest standard of quality is maintained throughout the project to ensure accuracy. We use modern technology and state-of-the-art equipment to ensure that the printing gets done with highest quality standards. We understand that most business today require fast turnaround time and hence offer same day printing solutions for various products. We can even offer same day store pick up for clients from Long Island and New Jersey.
There’s an old Steve Martin joke about how to make a million dollars which starts, “First, get a million dollars…” That’s the key to this trick, too: First, get a bunch of numbers. Here’s a file with 1,197 numbers in it. Now import or paste those numbers into a thread so that the numbers appear in the right place. If you need two matching numbers, just import it twice.
I have a problem with Outlook 2007 and the add-in Access Outlook Add-in for Data Collection and Publishing. This add-in worked when I first installed Outlook 2007 when installing Office 2007 Enterprise. The add-in created a sub-folder in my Inbox named Data Collection Replies and worked well until about 6 weeks ago. Now I can’t get the add-in to work at all even though it appears in the list of COM.adds in Outlook 2007. More perplexing is the error message I now receive EVERY time I click on any email message to read it. The message is titled ‘Custom UI Runtime Error in...
Occasionally we come across project requirements that include the ability to do sequential numbering in Access on a set of data. We cannot just use the auto-number data type because there is no promise of sequentiality but only uniqueness. In other words, if someone creates a record then later deletes it, there will be a gap in the sequence. So, what are our options? There are actually several ways, each with its pros and cons.
It sure is possible! Numbering and Section options are available in the Pages Panel menu. These options allow you to define what page starts a section and how it should be numbered. Insert a Current Page Number marker (Type>Insert Special Character>Markers>Current Page Number) in a text frame on a page or master page (recommended), select the first page of your section, open the Numbering and Section Options dialog, and enter 200 in the Start Page Numbering at: field. Hope this helps!
I have a file that displays the text "Page 1" in the center of the worksheet. I have not been able to find a way to stop the page number from displaying. There is no header/footer, no "background", no other special items that I could find that would force the display of this. It does not appear during the printing so it's not a "watermark". It merely displays in my view when I'm working in the worksheet. Help... Hi you're in page break preview view ... choose view / normal from the menu Cheers JulieD "whalenohana"
!function(n,t){function r(e,n){return Object.prototype.hasOwnProperty.call(e,n)}function i(e){return void 0===e}if(n){var o={},u=n.TraceKit,s=[].slice,a="?";o.noConflict=function(){return n.TraceKit=u,o},o.wrap=function(e){function n(){try{return e.apply(this,arguments)}catch(e){throw o.report(e),e}}return n},o.report=function(){function e(e){a(),h.push(e)}function t(e){for(var n=h.length-1;n>=0;--n)h[n]===e&&h.splice(n,1)}function i(e,n){var t=null;if(!n||o.collectWindowErrors){for(var i in h)if(r(h,i))try{h[i].apply(null,[e].concat(s.call(arguments,2)))}catch(e){t=e}if(t)throw t}}function u(e,n,t,r,u){var s=null;if(w)o.computeStackTrace.augmentStackTraceWithInitialElement(w,n,t,e),l();else if(u)s=o.computeStackTrace(u),i(s,!0);else{var a={url:n,line:t,column:r};a.func=o.computeStackTrace.guessFunctionName(a.url,a.line),a.context=o.computeStackTrace.gatherContext(a.url,a.line),s={mode:"onerror",message:e,stack:[a]},i(s,!0)}return!!f&&f.apply(this,arguments)}function a(){!0!==d&&(f=n.onerror,n.onerror=u,d=!0)}function l(){var e=w,n=p;p=null,w=null,m=null,i.apply(null,[e,!1].concat(n))}function c(e){if(w){if(m===e)return;l()}var t=o.computeStackTrace(e);throw w=t,m=e,p=s.call(arguments,1),n.setTimeout(function(){m===e&&l()},t.incomplete?2e3:0),e}var f,d,h=[],p=null,m=null,w=null;return c.subscribe=e,c.unsubscribe=t,c}(),o.computeStackTrace=function(){function e(e){if(!o.remoteFetching)return"";try{var t=function(){try{return new n.XMLHttpRequest}catch(e){return new n.ActiveXObject("Microsoft.XMLHTTP")}},r=t();return r.open("GET",e,!1),r.send(""),r.responseText}catch(e){return""}}function t(t){if("string"!=typeof t)return[];if(!r(j,t)){var i="",o="";try{o=n.document.domain}catch(e){}var u=/(.*)\:\/\/([^:\/]+)([:\d]*)\/{0,1}([\s\S]*)/.exec(t);u&&u[2]===o&&(i=e(t)),j[t]=i?i.split("\n"):[]}return j[t]}function u(e,n){var r,o=/function ([^(]*)$$([^)]*)$$/,u=/['"]?([0-9A-Za-z$_]+)['"]?\s*[:=]\s*(function|eval|new Function)/,s="",l=10,c=t(e);if(!c.length)return a;for(var f=0;f0?u:null}function l(e){return e.replace(/[\-{}()*+?.,\\\^$|#]/g,"\\$&")}function c(e){return l(e).replace("<","(?:<|<)").replace(">","(?:>|>)").replace("&","(?:&|&)").replace('"','(?:"|")').replace(/\s+/g,"\\s+")}function f(e,n){for(var r,i,o=0,u=n.length;or&&(i=u.exec(o[r]))?i.index:null}function h(e){if(!i(n&&n.document)){for(var t,r,o,u,s=[n.location.href],a=n.document.getElementsByTagName("script"),d=""+e,h=/^function(?:\s+([\w$]+))?\s*$$([\w\s,]*)$$\s*\{\s*(\S[\s\S]*\S)\s*\}\s*$/,p=/^function on([\w$]+)\s*$$event$$\s*\{\s*(\S[\s\S]*\S)\s*\}\s*$/,m=0;m]+)>|([^\)]+))$$(.*)$$)? in (.*):\s*$/i,o=n.split("\n"),a=[],l=0;l=0&&(g.line=v+x.substring(0,j).split("\n").length)}}}else if(o=d.exec(i[y])){var _=n.location.href.replace(/#.*$/,""),T=new RegExp(c(i[y+1])),E=f(T,[_]);g={url:_,func:"",args:[],line:E?E.line:o[1],column:null}}if(g){g.func||(g.func=u(g.url,g.line));var k=s(g.url,g.line),A=k?k[Math.floor(k.length/2)]:null;k&&A.replace(/^\s*/,"")===i[y+1].replace(/^\s*/,"")?g.context=k:g.context=[i[y+1]],h.push(g)}}return h.length?{mode:"multiline",name:e.name,message:i[0],stack:h}:null}function y(e,n,t,r){var i={url:n,line:t};if(i.url&&i.line){e.incomplete=!1,i.func||(i.func=u(i.url,i.line)),i.context||(i.context=s(i.url,i.line));var o=/ '([^']+)' /.exec(r);if(o&&(i.column=d(o[1],i.url,i.line)),e.stack.length>0&&e.stack[0].url===i.url){if(e.stack[0].line===i.line)return!1;if(!e.stack[0].line&&e.stack[0].func===i.func)return e.stack[0].line=i.line,e.stack[0].context=i.context,!1}return e.stack.unshift(i),e.partial=!0,!0}return e.incomplete=!0,!1}function g(e,n){for(var t,r,i,s=/function\s+([_$a-zA-Z\xA0-\uFFFF][_\$a-zA-Z0-9\xA0-\uFFFF]*)?\s*\(/i,l=[],c={},f=!1,p=g.caller;p&&!f;p=p.caller)if(p!==v&&p!==o.report){if(r={url:null,func:a,args:[],line:null,column:null},p.name?r.func=p.name:(t=s.exec(p.toString()))&&(r.func=t[1]),"undefined"==typeof r.func)try{r.func=t.input.substring(0,t.input.indexOf("{"))}catch(e){}if(i=h(p)){r.url=i.url,r.line=i.line,r.func===a&&(r.func=u(r.url,r.line));var m=/ '([^']+)' /.exec(e.message||e.description);m&&(r.column=d(m[1],i.url,i.line))}c[""+p]?f=!0:c[""+p]=!0,l.push(r)}n&&l.splice(0,n);var w={mode:"callers",name:e.name,message:e.message,stack:l};return y(w,e.sourceURL||e.fileName,e.line||e.lineNumber,e.message||e.description),w}function v(e,n){var t=null;n=null==n?0:+n;try{if(t=m(e))return t}catch(e){if(x)throw e}try{if(t=p(e))return t}catch(e){if(x)throw e}try{if(t=w(e))return t}catch(e){if(x)throw e}try{if(t=g(e,n+1))return t}catch(e){if(x)throw e}return{mode:"failed"}}function b(e){e=1+(null==e?0:+e);try{throw new Error}catch(n){return v(n,e+1)}}var x=!1,j={};return v.augmentStackTraceWithInitialElement=y,v.guessFunctionName=u,v.gatherContext=s,v.ofCaller=b,v.getSource=t,v}(),o.extendToAsynchronousCallbacks=function(){var e=function(e){var t=n[e];n[e]=function(){var e=s.call(arguments),n=e[0];return"function"==typeof n&&(e[0]=o.wrap(n)),t.apply?t.apply(this,e):t(e[0],e[1])}};e("setTimeout"),e("setInterval")},o.remoteFetching||(o.remoteFetching=!0),o.collectWindowErrors||(o.collectWindowErrors=!0),(!o.linesOfContext||o.linesOfContext<1)&&(o.linesOfContext=11),void 0!==e&&e.exports&&n.module!==e?e.exports=o:"function"==typeof define&&define.amd?define("TraceKit",[],o):n.TraceKit=o}}("undefined"!=typeof window?window:global)},"./webpack-loaders/expose-loader/index.js?require!./shared/require-global.js":function(e,n,t){(function(n){e.exports=n.require=t("./shared/require-global.js")}).call(n,t("../../../lib/node_modules/webpack/buildin/global.js"))}});
Hi Scott, I had a question regarding the sequential numbering Apex example…I am looking to automatically restart the sequence every month, which is not a problem using your example (i.e. changing the year to month in the expression). However, I would also like to add in a condition for year, so that the sequence restarts for each month of each year (i.e. my problem is for example that Feb 2011 last sequence number is 5, and then in Feb 2012 this becomes 6, where I would like it to be 1). I am wondering what the syntax would be. Thanks in advance, Lawn.
you'd need to use a before save macro. Something like the macro at the end - but it would run on every save, which may not be what you want. I use a macro that gets the invoice # and saves (it does several things). I added a button to the ribbon that calls a macro that runs several macros: Sub FinalizeInvoice() CreateInvoiceNumber CopyToExcel FinalCleanup ' this does the save End Sub This is an automated macro - but it will run every time the file is saved. Private WithEvents App As Word.Application Private Sub Document_Open() Set App = Word.Application… Read more »
Although sequences are a type of function, they are usually distinguished notationally from functions in that the input is written as a subscript rather than in parentheses, i.e. an rather than f(n). There are terminological differences as well: the value of a sequence at the input 1 is called the "first element" of the sequence, the value at 2 is called the "second element", etc. Also, while a function abstracted from its input is usually denoted by a single letter, e.g. f, a sequence abstracted from its input is usually written by a notation such as {\displaystyle (a_{n})_{n\in A}} , or just as {\displaystyle (a_{n})} . Here A is the domain, or index set, of the sequence.
If you know in advance that you need outline numbering for your paragraphs, you will want to choose the correct format from the Bullets and Numbering dialog box. Applying one of the preset formats to a paragraph or paragraphs that are already bulleted or numbered applies it to the entire list. There is a specific tab for outline numbers — the Outlined Numbered tab.
An alternative to writing the domain of a sequence in the subscript is to indicate the range of values that the index can take by listing its highest and lowest legal values. For example, the notation {\displaystyle (k^{2})_{k=1}^{10}} denotes the ten-term sequence of squares {\displaystyle (1,4,9,...,100)} . The limits {\displaystyle \infty } and {\displaystyle -\infty } are allowed, but they do not represent valid values for the index, only the supremum or infimum of such values, respectively. For example, the sequence {\displaystyle (a_{n})_{n=1}^{\infty }} is the same as the sequence {\displaystyle (a_{n})_{n\in \mathbb {N} }} , and does not contain an additional term "at infinity". The sequence {\displaystyle (a_{n})_{n=-\infty }^{\infty }} is a bi-infinite sequence, and can also be written as {\displaystyle (...,a_{-1},a_{0},a_{1},a_{2},...)} .

For example, (M, A, R, Y) is a sequence of letters with the letter 'M' first and 'Y' last. This sequence differs from (A, R, M, Y). Also, the sequence (1, 1, 2, 3, 5, 8), which contains the number 1 at two different positions, is a valid sequence. Sequences can be finite, as in these examples, or infinite, such as the sequence of all even positive integers (2, 4, 6, ...). In computing and computer science, finite sequences are sometimes called strings, words or lists, the different names commonly corresponding to different ways to represent them in computer memory; infinite sequences are called streams. The empty sequence ( ) is included in most notions of sequence, but may be excluded depending on the context.
Is there a way to delete old or no longer used email addresses that appear in the drop down box when I am addressing a new email? Shebubba wrote: > Is there a way to delete old or no longer used email addresses that appear in > the drop down box when I am addressing a new email? That is the nickname cache. Search and delete the .nk2 file. That's the cache for nicknames (i.e., your manually entered e-mail addresses). If you only want to delete some of them, highlight an entry and hit the delete key. If that doesn't work, use Nirsoft's NK2 Viewer utility (it e...
A sequence can be thought of as a list of elements with a particular order. Sequences are useful in a number of mathematical disciplines for studying functions, spaces, and other mathematical structures using the convergence properties of sequences. In particular, sequences are the basis for series, which are important in differential equations and analysis. Sequences are also of interest in their own right and can be studied as patterns or puzzles, such as in the study of prime numbers.
If you prefer, you can use a macro to print out your numbered copies. For instance, the following macro asks you how many copies you want to print, along with the starting copy number to use. (This comes in real handy if you print 25 copies, and then someone asks you to print a second batch of 10, numbered 26 through 35.) The macro also stores the last copy number between sessions, so that it is used as the default when you next run the macro.


Klaus Nordby, one of our good-natured Norwegian hecklers, has produced a ray of sunshine in the midst of a deep, dark Scandanavian winter by coming up with a wonderful little trick involving adding sequential numbers inside a paragraph. For example, 1. this is the first clause of this sentence; 2. this is the second; and 3. this is the third. That’s not a big deal to type, of course, but if you had dozens of them and you needed to insert or remove numbering frequently, doing it manually would be a hassle.
I've managed to edit one using Find and Replace with an { SEQ } field as the replacement to give sequential numbering. This started from 1 which is fine. Subsequent xml's where I've tried to use { SEQ \r n } to get numbering starting from other than 1 results in multiple occurrences of the number as defined by n. It's this way even after updating the fields.
I have Office 2003 installed to Windows 2003 terminal servers but I have a problem with on of our users and excel. The issue is that when the user is trying to have multiple spreadsheets opened he keeps getting the message "This operations has been cancelled due to system restrictions- Contact your system Administrator" I can find no setting in excel to enforce a limit on the number of speadsheets a user can have open. Thanks in advance fo any advise Michael Not an expert in these matters, but; Is it possible that the user is trying to initiate another session of Excel vs....
flex printing machine water transfer printing machine canvas printing machine 3d t-shirt printing machine large format printing machine vinyl printing machine expiry date printing machine cd printing machine used flex printing machine poster printer machine cake printing machine poster printing machine sticker making machine vinyl sticker printing machine wall printing machine More...
I am trying to split a single cell into 2 rows can you help If I understood correctly you want to enter an entry in two lines in a cell at appropirate place hit lt+enter and again hit enter for e.g venkat (alt+enter) raman(enter) "trev" wrote in message news:89B2C15C-057F-43B9-8282-37923D5EA397@microsoft.com... > I am trying to split a single cell into 2 rows can you help ...
Design your ticket, use excel or libre's version and create the numbers. Save those numbers as text, I always make the first one xxx then 001 and so on, xxx will be the master page. Use data merge from Indesign to create the master ticket, you will need to make a text box for the number. Once it looks good to you draw a text box around the whole ticket. At the bottom of the data merge tab is a button that gives you the options how you want your layout, columns or rows, etc. even has a preview. once you click create it will create another file with all your tickets sequentially numbered. It'll be a couple of hours before I'm at work but can post the link I used to create these for the first couple of times.

OK, so what didn’t you understand in my blog? The blog contains instructions on how to deal with this. It tells you that you do not want an LH Identifier field. It tells you that all you need is to add a Sequence field to store the Sequential number. It tells you how to base that number on the current year so it restarts with the new year, Finally it tells you how to combine the year and the sequence # with whatever else you need to display the LH identifier. These instructions are all detailed in the blog.


When you are ready to restart numbering, you can use the technique above, or you can place your cursor inside a numbered paragraph above, click the Format Painter (the paintbrush icon on the Home tab under Clipboard), then click on the line where you want to restart numbering. Using Format Painter this way solves several paragraph numbering problems (the number sequence, indents, and inter-paragraph spacing) simultaneously.
Here, the field code SEQ is the winning choice. SEQ is a sequence numbering code often used for things like figures or illustrations (think “Figure 1”). What makes it an ideal choice here is the ability to name each sequence separately. In other words, we can define one numbering sequence for interrogatories, another one for requests for production, and a third one for requests for admission. Microsoft Word will be able to keep each numbering sequence separate because each will have a distinct name.
The sequential numbers required for the stationery are typically prepared in a spreadsheet such as Microsoft Excel and then exported as a txt or csv file for use with the Data Merge palette. However, a free script called Indys Number Generator written by Stanislav Antos can create sequential numbers without having to open any spreadsheet software. The script has been available for some time but I feel it is a hidden gem and definitely worth discussing.


You could stop there and just copy those little bits of text all through your document. But no, we want to make this really, really easy! So we’re going to set up some AutoText entries. What that’s going to do for you (if you’re using Microsoft Word 2010 or above — if you use version 2007, see below for some caveats) is allow you to type the first four letters of your SEQ name and have Word offer to complete the phrase for you, complete with the incrementing number courtesy of the sequence field code we set up earlier.

Automata or finite state machines can typically be thought of as directed graphs, with edges labeled using some specific alphabet, Σ. Most familiar types of automata transition from state to state by reading input letters from Σ, following edges with matching labels; the ordered input for such an automaton forms a sequence called a word (or input word). The sequence of states encountered by the automaton when processing a word is called a run. A nondeterministic automaton may have unlabeled or duplicate out-edges for any state, giving more than one successor for some input letter. This is typically thought of as producing multiple possible runs for a given word, each being a sequence of single states, rather than producing a single run that is a sequence of sets of states; however, 'run' is occasionally used to mean the latter.

#### We offer a number of printing solutions for clients around New York. Our speciality is printing club flyers, but we also offer banner printing, signs printing, brochure printing, catalog printing, poster printing, t-shirt printing and more. Along with these, we also offer printing related services like bunting, vinyl printing, die cutting, foil stamping, graphic design and more. We offer shipping to all 48 of the US continental states. Contact us for printing solutions at wholesale prices today!

Determine what kind of numbering you want to use for your document or book. For long documents, you can assign chapter numbers. Each document can be assigned only one chapter number. If you want to use different numbering within a document, you can define ranges of pages as sections; these sections can be numbered differently. For example, the first ten pages of a document (the front matter) might use Roman numerals, and the rest of the document might use Arabic numerals.


Select the Text Tool (T) and start dragging a text box that will wrap around the whole ticket including the crop marks. This is very important since the Data Merge will automatically calculate the duplication. Then open up the Text Frame Option (Command + B) and set the Inset spacing to 1p4 for the top and 1p8 for the left. Of course, you can place the text for the numbers anywhere you like. I set the numbers to a small text.

So if you encountered this problem, then you didn’t follow the instructions completely (which is OK) and appear to be automatically generating the number whenever the record is accessed. If that’s the case, then you are risking duplication because you are not saving the generated number immediately. Rather then try to test if a number already exists as you seem to be doing, you should not automatically generate the number, but trigger the generation from some action in the form.