>>The values of these variable are populated in the Split_Name function, but they still are empty after the function runs. I must be not using the reference correctly.
>>
>>
>>NewFirstName = ''
>>NewMidName = ''
>>NewLastName = ''
>>
>>cLastFirst = split_name(Schedule.s_Pat_Name, @NewFirstName, @NewMidName, @NewLastName)
>>
>>
>>
>>FUNCTION split_name
>>
>> LPARAMETERS tcName , taNewFirstName, taNewMidName, taNewLastName
>>
>> (Other stuff going on here)
>>
>> NewFirstName = SomeNewValue
>> NewMidName = SomeNewValue
>> NewLastName = SomeNewValue
>>
>> RETURN
>>
>>
>
>Assign your new values to the parameters, not to the variables.
>
>E.g. taNewFirstName = SomeNewValue, etc.
>
>BTW, why do you name your parameters ta instead of tc ? ta indicates an array, and this is not your case.
Someone else's code that is being rewritten. Changing the poor naming conventions will be handled too.