So you're saying that the difference in time is VFP's own overhead and nothing to do with my code? I'm still not quite grasping what you are trying to say.
FWIW, I switched my CASE statement to an IF..END loop and that seems to have sped things up considerably.
>Hi Frank,
>
>I'm sorry,
>
> M - method, P - procedure
>
>MartiJ
>
>>Hi Martin,
>>
>>I don't understand what you are trying to say. What are M/P and MP? Could you try to explain again, please?
>>
>>>The diferrent time between calling from parent M/P and all time from inner MP is:
>>>
>>>t1=seco()
>>>put parameters to stackpoint
>>>Call subroutine
>>>~~~~~~~~~~~~~~~
>>>the proccesor time has another thread/process
>>>~~~~~~~~~~~~~~~
>>>get parameters and result from stackpoint
>>>t2=seco()
>>>
>>>
>>>MartiJ
>>>
>>>>Hi,
>>>>
>>>>I'm quite familiar with the Coverage Profiler but am somewhat confused when I see the following in the Profile Mode:
>>>>
>>>>
>>>>PROCEDURE addbeforeappendblank
>>>>1 Hit 1st 5.359766 Avg 5.359766 IF thisform.isnewbatch()
>>>>.
>>>>.
>>>>.
>>>>PROCEDURE isnewbatch
>>>>1 Hit 1st 0.000000 Avg 0.000000 DO CASE
>>>>
>>>>1 Hit 1st 0.000000 Avg 0.000000 CASE EMPTY(thisform.icbatchno)
>>>>0 Hits 1st 0.000000 Avg 0.000000 RETURN .T.
>>>>
>>>>1 Hit 1st 0.000000 Avg 0.000000 CASE thisform.chkNewBatch.Value
>>>> * check if all cards have been entered for this batch
>>>> IF oAppInfo.PreCountBatch AND thisform.inbatchrecordcount < thisform.inPreCountBatch ;
>>>>0 Hits 1st 0.000000 Avg 0.000000 AND X3MSGSVC("Card count, less") = "Y"
>>>>0 Hits 1st 0.000000 Avg 0.000000 thisform.chkNewBatch.Value = .F.
>>>>0 Hits 1st 0.000000 Avg 0.000000 RETURN .t.
>>>> ELSE
>>>>0 Hits 1st 0.000000 Avg 0.000000 RETURN .F.
>>>> ENDIF
>>>>
>>>> CASE oAppInfo.PreCountBatch AND thisform.inbatchrecordcount >= thisform.inPreCountBatch ;
>>>>1 Hit 1st 0.000000 Avg 0.000000 AND X3MSGSVC("The actual count of cards matches the pre-counted number") = "Y"
>>>>0 Hits 1st 0.000000 Avg 0.000000 RETURN .T.
>>>>
>>>> OTHERWISE
>>>>1 Hit 1st 0.000049 Avg 0.000049 RETURN .F.
>>>>
>>>> ENDCASE
>>>> ENDPROC
>>>>
>>>>
>>>>The thisform.IsNewBatch() call at the the AddBeforeAppendBlank() method says it took 5 odd seconds, yet the profile of IsNewBatch shows it took 0.000049 seconds. Can anyone explain the timing difference to me, please?