* Original code: LPARAMETERS ; tcParameter1, ; tlParameter2, ; tdParameter3 * Change to: LPARAMETERS ; tcParameter1, ; tlParameter2, ; tdParameter3, ; tcNewParameter1, ; ttNewParameter2, ; ...If a routine calls the UDF with fewer parameters than are in the LPARAMETERS statement, the extra ones (at the end) simply get initialized to .F. without error. If your modified routine depends on these values, you will need to set your own default values using something like this:
LPARAMETERS ; tcParameter1, ; tlParameter2, ; tdParameter3, ; tcNewParameter1, ; ttNewParameter2 LOCAL ; lnParameterCount lnParameterCount = PCOUNT() IF lnParameterCount < 5 ttNewParamter2 = <i>SomeDefaultDateTimeValue</i> ENDIF IF lnParameterCount < 4 tcNewParamter1 = <i>SomeDefaultCharacterString</i> ENDIF * Using the reverse order as shown above, lets the calling function * specify 3, 4, or 5 parameters.