@Kem T John can you share your source code? I'd like to figure this out.
Kem, I'd really like to share the code, but this is a commercial application that prevents me from doing that.
This particular code segment is hundreds of lines long and not just as simple as some who have replied might think. I know it's something strange in this code segment because if I just put the following code before the actual "While" code, it skips over it as well.
While ((nYROD = 1 and nAFYD > 0) OR nBUUCOST > 0)
This is a module that is called from a window so there is no possibility of a variable and a property that might be the same name. There are 250 lines of code that are executed before it even gets to this "While" statement. Here is the variable declaration that includes the variables used in the "While" statement. Of course, some of these values will change as it runs through the code, but as I stated, I interrogated the values in the debug just before it got to the "While" and they should allow the While to execute, but it does not.
dim ACQ As Date = rsASSETS.Field("ACQ").DateValue
dim nCOST As Double = 0.00
dim nS179 As Double = 0.00
dim cITCS As String = ""
dim nITCA As Double = 0.00
dim nSALV As Double = 0.00
dim nYROD As Integer = 1
dim BONUSTAKEN As Boolean = False
dim nBONUSPCT As Double = 0.00
dim nAFYD As Double = 0.00
dim nBPCT As Double = 0.00
dim cLISTED As String = ""
dim nBASE As Double = 0.00
dim VBUP As Boolean = False
dim nBUUCOST As Double = 0.00
dim nACTUALBPCT As Double = 0.00
dim cSTATUS As String = ""
dim cSTATUS_SAVE As String = rsASSETS.Field("STATUS").StringValue
dim nYROD_SAVE As Integer = rsASSETS.Field("YROD").IntegerValue
dim nACCD As Double = 0.00
dim nMTYR As Double = 0.00
dim nNXYR As Double = 0.00 // NEXT YEAR'S DEPR
I'm going to try Michael's suggestion and see if I can clear the cache. I'm running on a Mac, but will test on Windows to see if I get the same behavior and report back.