olegyudin писав: ↑06 липня 2021, 12:04
Все ваши варианты с датой пробовал. Не помогает
Тогда у меня для Вас 2 новости:
хорошая и
плохая.
Начну с
плохой:
Вам нужно срочно переходить на что-то поновее.
Теперь
хорошая:
После некоторых танцев с бубном:
Ошибка, если значение даты изначально в строковом типе и используем
DtoC:
- ... | Показать
- Screenshot_6.jpg (72.11 Кіб) Переглянуто 1755 разів
Предварительное преобразование строковой даты в тип Date и использование
DtoC для преобразования обратно в строку:
- ... | Показать
- Screenshot_7.jpg (84.82 Кіб) Переглянуто 1755 разів
Никаких преобразований и передача строкового значения даты напрямую в аргумент метода
CreateDocumentByParam:
- ... | Показать
- Screenshot_8.jpg (95.3 Кіб) Переглянуто 1755 разів
Во-первых и в главных - хорошо бы узнать
тип значения переменной dDate.
Если используется так называемая "венгерская нотация", то видимо предполагается, что там значение с типом
Date. А как оно на самом деле - неизвестно.
Если же оно имеет
строковый тип (
string) (а это случается чаще), то передача её значения в функцию
DtoC (
DateToChar) вызовет ошибку, т.к. входящим типом функция ожидает
Date, а получает
String.
Ошибку, ссылающуюся на аргумент (как у Вас) мне удалось "словить" только в случае, когда я пытался передать в функцию
DtoC именно строковое значение даты (в примере -
'07/01/2021', формат ММ/ДД/ГГГГ).
А решить её удалось двумя путями:
путя 1 - предварительно преобразовывать строковый тип в дату (если хотим оставить использование
DtoC);
путя 2 - убрать все эти преобразования и напрямую передавать строковое значение даты аргументом метода.
Примеры и результаты выше.
Если не помогло - тогда ищите отладчик и смотрите, что там происходит в реальном времени.
То, что метод работает - это факт, проверил лично на 1С, VBScript, C# и теперь вот на этом (даже название не знаю).