Thanks for the replies to my original post.

They gave me something to work on and I have made some progress.  I think
that the macros run in series, but I am not yet sure of that.

For some reason the wait(2000) commands that I inserted into the the macros
don't seem to work and I am getting several lines with the identical time
stamps, like this -
1.  03/04/2014 23:44:57
2.  03/04/2014 23:44:57
3.  03/04/2014 23:44:57

I looked up the formatting for time stamps and
DD:MM:YYYY hh:mm:ss.00 is supposed to give fractions of a second, but I
don't know how to apply this to the Now() function.

The code I am using to print to the text files is -

     giInit = FreeFile()
     Open "D:\LibreOffice\InitfTransEntry.txt" for Output as giInit
     Print #giInit, "1.  " + Now()

Any suggestions as to how I can format Now(), or should I use a different
function to get more accurate timing?

Thanks,

Noel
--
Noel Lodge
[email protected]


On 2 April 2014 00:05, Andrew Douglas Pitonyak <[email protected]> wrote:

> Sadly, I do not have a definitive answer to your question, but I do have
> some thoughts... (see inline)
>
>
> On 04/01/2014 06:57 AM, Marion & Noel Lodge wrote:
>
>> Hi,
>>
>> In opening my database accounting system, I trigger via the Form: When
>> loading event, a macro, (Sub Init()), containing the database
>> initialisation routines.
>>
>> As the Form loads it displays the first record in the database, including
>> the account number.   To make things easier for the user, the Text
>> modified
>> event on the account number control, triggers a macro, (Sub AccName()),
>> that displays the account name.
>>
>
> And I assume that this is built into the form.
>
>
>  Sometimes the system has crashed because it seems that Sub AccName() has
>> fired before Sub Init() has finished.  (Sub AccName() depends on some of
>> the structures that Sub Init() sets up.)
>>
>> Is it possible that both Subs are running in parallel or do they always
>> run
>> in series on a first come first served basis?
>>
>
> Warning: Speculation... So insert the following text before each statement
> below:  "I am making a wild unsubstantiated guess that"
>
> 1. The form is populated before Init() finishes
> 2. AccName() is called as soon as text is pushed into the control.
>
> So, if this is the case, then AccName may be called before Init()
> finishes. If you really want to know if they run at the same time, you
> could do a not so quick test and modify each routine so that the macro does
> something like this:
>
> Sub Init()
>   Write current time to a file
>   delay a second or two
>   Do the work
>   delay a second or two
>   Write the current time to a file
> End Sub
>
> Use a different file for each subroutine, then compare the start and end
> time to see if they overlap. You can probably get away with using a simple
> print statement at the start and end.
>
>
>  If the latter, are there coding techniques that can be used to ensure that
>> Sub Init() always runs first?
>>
>
> If things run serially and AccName is called based on something done in
> Init(), it may be possible that Init() cannot complete until after
>  AccName() finishes.
>
>
> I suppose that another possibility is to set a "Global" variable such as
> "InitComplete". set to false when Init() starts, and set to true when it
> completes. Modify AccName to check for InitComplete. If things are serial,
> then you may need to simply return. If not, then have AccName wait for a
> few seconds and try again. If things are truly serial, then I would expect
> them to fail every time, and they don't fail every time, so it is likely
> not the case.
>
>
>
>> If the former, how can I ensure that Sub AccName() waits until Sub Init()
>> has finished?
>>
>
> Oh wait, see above! :-)
>
>
>
>> Can someone point me to any articles on this subject?
>>
>> Thanks,
>>
>> Noel
>> --
>> Noel Lodge
>> [email protected]
>>
>>
> --
> Andrew Pitonyak
> My Macro Document: http://www.pitonyak.org/AndrewMacro.odt
> Info:  http://www.pitonyak.org/oo.php
>
>
> --
> To unsubscribe e-mail to: [email protected]
> Problems? http://www.libreoffice.org/get-help/mailing-lists/how-to-
> unsubscribe/
> Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
> List archive: http://listarchives.libreoffice.org/global/users/
> All messages sent to this list will be publicly archived and cannot be
> deleted
>
>

-- 
To unsubscribe e-mail to: [email protected]
Problems? http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/global/users/
All messages sent to this list will be publicly archived and cannot be deleted

Reply via email to