Rocky Smolin - Beach Access Software
bchacc at san.rr.com
Thu Oct 9 12:39:56 CDT 2003
Gustav: Yeah. But the problem comes before there anyway. It's in the loop. Rocky ----- Original Message ----- From: "Gustav Brock" <gustav at cactus.dk> To: "Access Developers discussion and problem solving" <accessd at databaseadvisors.com> Sent: Thursday, October 09, 2003 10:09 AM Subject: Re: [AccessD] File Sharing lock count exceeded > Hi Rocky > > You did cut away in the code snip: > > Set rstTaxRate = Nothing > Set rstRecoveryTable = Nothing > > ? > > /gustav > > > > Dear List: > > > I am getting an error in a loop which says: > > > File sharing lock count exceeded. Increase MaxLocksPerFile registry entry. > > > I don't think that's the solution. The lock limit should not be exceeded. Somehow I'm not releasing the locks as they're being created. Is there a trick to doing that? It blows at different > > counts, too. Sometimes over 70,000 records get processed, sometimes 40,000. > > > Here's the code: > > > '*************************************************************************** ***** > > Set rstTaxRate = db.OpenRecordset("Select * FROM tblTaxRates") > > Set rstRecoveryTable = db.OpenRecordset("Select * FROM tblPrintRecoveryForm") > > > With rstRecoveryTable > > > If .BOF = True And .EOF = True Then GoTo GoodBye: > > > .MoveLast > > txtTotalRecords = .RecordCount > > .MoveFirst > > lngCount = 0 > > > Do While Not .EOF > > > lngCount = lngCount + 1 > > If lngCount Mod 1000 = 0 Then > > txtRecordNumber = lngCount > > Me.Repaint > > End If > > > .Edit > > > If Nz(!fldInvoiceDetailPriceShouldBe) = 0 Then > > !PriceError = 0 > > !TotalDue = 0 > > End If > > > If Nz(!fldInvoiceDetailPricePaid) < 0 Then > > !PriceError = !fldInvoiceDetailPricePaid > > !TotalDue = !PriceError * !fldInvoiceDetailQuantity > > End If > > > If !fldInvoiceDetailSalesTax = "Y" Then > > > ' find tax rate for this invoice date; if not found, tax is zero > > rstTaxRate.FindFirst "fldTaxRateStartDate <= #" & !fldInvoiceDate _ > > & "# AND fldTaxRateEndDate >= #" & !fldInvoiceDate & "#" > > > If rstTaxRate.NoMatch = False Then > > !SalesTax = !PriceError * rstTaxRate!fldTaxRate > > !TotalDue = (!PriceError + !SalesTax) * !fldInvoiceDetailQuantity > > End If > > > End If > > > .Update > > > .MoveNext > > Loop > > > End With > > '************************************************************************* > > > Any hints? > > > MTIA, > > > Rocky Smolin > > Beach Access Software > > _______________________________________________ > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com >