Search the Community
Showing results for tags 'chunk'.
-
Complex Chunking Based on Fields and Record Number
Landisa posted a topic in Issues, Questions, Etc.
So we are trying to find a better way to run several hundred different coupon stacks. The customer wants the coupons stacked in "books" based on the number of coupons per book. Here are the codes I have: OnJobStart FusionPro.Composition.chunksBreakStacks = true; OnRecordStart var jobNumber = Field("Job #") + "_" + Field("BMA Name"); var jobExtension = "." + (FusionPro.Composition.outputFormatExtension || "pdf"); if (FieldChanged("BMA Name") && FusionPro.Composition.repeatRecordNumber == 1) FusionPro.Composition.OpenNewOutputFile(jobNumber + jobExtension); couponNumber var strNumber = "<b><z newsize=10>N<z newsize=14><u><superscript>o</superscript></u><z newsize=12> </b>"; var bookCount = Field("# of books"); var couponPerBook = Field("# of coupons/book"); FusionPro.Composition.composeAllRecords = false; FusionPro.Composition.startRecordNumber = Field("start #"); FusionPro.Composition.endRecordNumber = Field("end #"); FusionPro.Composition.repeatRecordCount = Field("# of coupons"); return strNumber + FormatNumber ("0000", FusionPro.Composition.recordNumberInChunk); This works great for stacking our coupons for each Ranch. However, we now need to use the # of coupons/book to break up each part into a new book. Example: Currently we see Job#_Ranch1.pdf (4000 coupons 1-4000) Job#_Ranch2.pdf (6000 coupons 1-6000) What we are looking for are smaller chunks based on number of records per book and number of books or total number of coupons. Example: We want to see Job#_Ranch1_Book1 (2000 coupons 1-2000) Job#_Ranch1_Book2 (2000 coupons 2001-4000) Job#_Ranch2_Book1 (1000 coupons 1-1000) Job#_Ranch2_Book2 (1000 coupons 1001-2000) Job#_Ranch2_Book3 (1000 coupons 2001-3000) Job#_Ranch2_Book4 (1000 coupons 3001-4000) Job#_Ranch2_Book5 (1000 coupons 4001-5000) Job#_Ranch2_Book6 (1000 coupons 5001-6000) I have tried a few things, including for loops, extra if statements and while loops. So far I have been unsuccessful at getting the result we need. I am assuming we need a variable "bookCount" to increase after each set so it doesn't overwrite the previous set. Attached is the original code before the OnRecordStart was updated for you to work with. Suggestions? BMA Sample Coupons.zip