Excellent suggestion, thanks for the help.
dg
>Well, GUIDs are long because they're aimed at being globally unique - or to be more exact, to make the chances of a collision vanishingly small.
>
>If you're just concerned with getting unique strings on different machines on the same LAN, you could prepend or append the computer's NetBIOS name (the first part of SYS( 0 )) to any other string you generate. That name must be unique for all computers on a LAN.
>
>However, if you run more than one instance of your program on a single computer, those instances will share the same NetBIOS name (although, as pointed out elsewhere their ProcessID values will be different).
>
>>Al, thank you!
>>
>>I had looked at
>>
>>oGUID = CreateObject("scriptlet.typelib")
>>cGUID = substr( oGUID.GUID, 2, 36 )
>>? cGUID
>>
>>
>>but wanted a shorter key that I could also use as a filename.
>>
>>dg
>>
>>>You may want to look at GUIDs for this sort of thing:
http://fox.wikis.com/wc.dll?Wiki~GUIDGenerationCode~VFP>>>
>>>>Thank you. I want to be able to order this key by chronology, so do I understand that
>>>>
SUBSTR(SYS(2015),2, 9)+TRANSFORM(_vfp.ProcessId)
>>>>would yield unique id's created on different machines at the precise same moment?
>>>>
>>>>dg
>>>>
>>>>
>>>>
>>>>>Adding ProcessId to should make the key unique
>>>>>
>>>>>transform(_vfp.ProcessId)+SYS(2015)
>>>>>
>>>>>>I am creating a unique key with substr(SYS(2015),2, 9) as the value. Would it require that 2 users on 2 machines create the key at the same millisecond to get a duplicate, or even at the precise same moment would different machines render different values?
>>>>>>
>>>>>>Thanks.