Вобщем вот что у меня получилось, на имеющихся вариантах отрабатывает нормально.
Функция ПолучитьДатуИзЗначения(Значение)
Если ТипЗнч(Значение) = Тип("Дата") Тогда
Возврат Значение;
ИначеЕсли ТипЗнч(Значение) = Тип("Число") Тогда
чДата = Строка(Формат(Значение,"ЧГ=0"));
Если СтрДлина(чДата) = 4 Тогда
Возврат Дата(чДата,1,1);
ИначеЕсли СтрДлина(чДата) = 6 Тогда
Если Формат(чДата,"ДФ=ddMMyy") = Формат(ТекущаяДата(),"ДФ=ddMMyy") Тогда
Возврат Дата("20"+Сред(чДата,5),Сред(чДата,3,2),Лев(чДата,2));
ИначеЕсли Формат(чДата,"ДФ=yyMMdd") = Формат(ТекущаяДата(),"ДФ=yyMMdd") Тогда
Возврат Дата("20"+Лев(чДата,2),Сред(чДата,3,2),Сред(чДата,5));
КонецЕсли;
ИначеЕсли СтрДлина(чДата) = 8 Тогда
Если Формат(чДата,"ДФ=ddMMyyyy") = Формат(ТекущаяДата(),"ДФ=ddMMyyyy") Тогда
Возврат Дата(Сред(чДата,5),Сред(чДата,3,2),Лев(чДата,2));
ИначеЕсли Формат(чДата,"ДФ=yyyyMMdd") = Формат(ТекущаяДата(),"ДФ=yyyyMMdd") Тогда
Возврат Дата(Лев(чДата,4),Сред(чДата,5,2),Сред(чДата,7));
КонецЕсли;
КонецЕсли;
ИначеЕсли ТипЗнч(Значение) = Тип("Строка") Тогда
сДата = Значение;
Если ОбщегоНазначения.ТолькоЦифрыВСтроке(сДата,Ложь,Ложь) Тогда
//
ИначеЕсли СтрЧислоВхождений(сДата,"/") Тогда
сДата = СтрЗаменить(сДата,"/","");
ИначеЕсли СтрЧислоВхождений(сДата,".") Тогда
сДата = СтрЗаменить(сДата,".","");
ИначеЕсли СтрЧислоВхождений(сДата,"-") Тогда
сДата = СтрЗаменить(сДата,"-","");
Иначе
Возврат Неопределено;
КонецЕсли;
Если СтрДлина(сДата) = 4 Тогда
Возврат Дата(сДата,1,1);
ИначеЕсли СтрДлина(сДата) = 6 Тогда
Если Формат(сДата,"ДФ=ddMMyy") = Формат(ТекущаяДата(),"ДФ=ddMMyy") Тогда
Возврат Дата("20"+Сред(сДата,5),Сред(сДата,3,2),Лев(сДата,2));
ИначеЕсли Формат(сДата,"ДФ=yyMMdd") = Формат(ТекущаяДата(),"ДФ=yyMMdd") Тогда
Возврат Дата("20"+Лев(сДата,2),Сред(сДата,3,2),Сред(сДата,5));
КонецЕсли;
ИначеЕсли СтрДлина(сДата) = 8 Тогда
Если Формат(сДата,"ДФ=ddMMyyyy") = Формат(ТекущаяДата(),"ДФ=ddMMyyyy") Тогда
Возврат Дата(Сред(сДата,5),Сред(сДата,3,2),Лев(сДата,2));
ИначеЕсли Формат(сДата,"ДФ=yyyyMMdd") = Формат(ТекущаяДата(),"ДФ=yyyyMMdd") Тогда
Возврат Дата(Лев(сДата,4),Сред(сДата,5,2),Сред(сДата,7));
КонецЕсли;
КонецЕсли;
КонецЕсли;
Возврат Неопределено;
КонецФункции