Сравнение типов переменных

1. val_ka 06.11.20 12:20 Сейчас в теме
Переменная МассивЗн3 имеет значение "строка"
Переменная МассивЗн6 имеет значение "неопределено"
Почему цикл не определяет, что переменная "МассивЗн6 " имеет тип "неопределено" и переходит к ветке "Иначе"?

                            ДатаСоздания = Элемент.Получить ("createdDate");
					ДатаЗакрытия = Элемент.Получить ("closedDate");

						Если ТипЗнч(ДатаСоздания) = неопределено или ТипЗнч(ДатаЗакрытия) = неопределено Тогда
							
							СтрокаСправочника.ДатаСозданияЗадачи = ДатаСоздания;
							СтрокаСправочника.ДатаЗакрытияЗадачи = ДатаЗакрытия;
						
						Иначе
						
							ДатаСоздания = Сред(ДатаСоздания, 1, 4) + Сред(ДатаСоздания, 6, 2) + Сред(ДатаСоздания, 9, 2) + Сред(ДатаСоздания, 12, 2) + Сред(ДатаСоздания, 15, 2) + Сред(ДатаСоздания, 18, 2);
							СтрокаСправочника.ДатаСозданияЗадачи = Дата (ДатаСоздания);
							
							ДатаЗакрытия = Сред(ДатаЗакрытия, 1, 4) + Сред(ДатаЗакрытия, 6, 2) + Сред(ДатаЗакрытия, 9, 2) + Сред(ДатаЗакрытия, 12, 2) + Сред(ДатаЗакрытия, 15, 2) + Сред(ДатаЗакрытия, 18, 2);
							СтрокаСправочника.ДатаЗакрытияЗадачи = Дата (ДатаЗакрытия);
						
						КонецЕсли;

Показать
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
17. spacecraft 06.11.20 13:29 Сейчас в теме
(15) читайте СП.
ПрочитатьJSON(<ЧтениеJSON>, <ПрочитатьВСоответствие>, <ИменаСвойствСоЗначениямиДата>, <ОжидаемыйФорматДаты>, <ИмяФункцииВосстановления>, <МодульФункцииВосстановления>, <ДополнительныеПараметрыФункцииВосстановления>, <ИменаСвойствДляОбработкиВосстановления>, <МаксимальнаяВложенность>)
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Denis_CFO 48 06.11.20 12:22 Сейчас в теме
(1)
что переменная "МассивЗн6 " имеет тип "неопределено"

а что говорит ТипЗнч(МассивЗн6) и ТипЗнч(МассивЗн3)?
3. val_ka 06.11.20 12:30 Сейчас в теме
(2)
в отладчике в таком случае просто было значение этих переменных
4. antz 06.11.20 12:41 Сейчас в теме
Если МассивЗн3 = неопределено
5. val_ka 06.11.20 12:53 Сейчас в теме
(4) тогда он присваивает другое значение переменной
Прикрепленные файлы:
6. val_ka 06.11.20 12:55 Сейчас в теме
(4) Хотя изначально там было это значение
Прикрепленные файлы:
7. antz 06.11.20 13:01 Сейчас в теме
(6) Где "там"? На одном скрине СтрокаСправочника.ДатаСозданияЗадачи, на другом - переменная ДатаСоздания.
8. val_ka 06.11.20 13:09 Сейчас в теме
(7)

СтрокаСправочника.ДатаСозданияЗадачи ей присваивается измененное значение в условии цикла переменной ДатаСоздания
9. Sashares 34 06.11.20 13:16 Сейчас в теме
(8)Вы так условие написали и оно выполняется именно так как вы написали.
10. val_ka 06.11.20 13:19 Сейчас в теме
(9) как тогда составить условие, что в случае, если у ДатыСоздания или у ДатыЗакрытия тип "неопределено" цикл переходил выполнять ветвь "тогда", а не "иначе"?
11. antz 06.11.20 13:20 Сейчас в теме
(10)
То есть если у одной из дат тип неопределено - все равно нужно присваивать значение обеих дат?

И не нужен вот этот кошмар:

ДатаСоздания = Сред(ДатаСоздания, 1, 4) + Сред(ДатаСоздания, 6, 2) + Сред(ДатаСоздания, 9, 2) + Сред(ДатаСоздания, 12, 2) + Сред(ДатаСоздания, 15, 2) + Сред(ДатаСоздания, 18, 2);


нужно

СтрокаСправочника.ДатаСозданияЗадачи = XMLЗначение(Тип("Дата"), ДатаСоздания)
13. val_ka 06.11.20 13:23 Сейчас в теме
(11)
Да, тогда мне все равно нужно присвоить это значение.

этот кошмар нужен, потому что в ДатеСоздания хранится тип "Строка" со значением "2020-10-14Т09:37:46+07:00"
14. antz 06.11.20 13:24 Сейчас в теме
(13) Для этого преобразования и существует XMLЗначение.
15. val_ka 06.11.20 13:25 Сейчас в теме
17. spacecraft 06.11.20 13:29 Сейчас в теме
(15) читайте СП.
ПрочитатьJSON(<ЧтениеJSON>, <ПрочитатьВСоответствие>, <ИменаСвойствСоЗначениямиДата>, <ОжидаемыйФорматДаты>, <ИмяФункцииВосстановления>, <МодульФункцииВосстановления>, <ДополнительныеПараметрыФункцииВосстановления>, <ИменаСвойствДляОбработкиВосстановления>, <МаксимальнаяВложенность>)
19. val_ka 06.11.20 13:53 Сейчас в теме
(17)
РезультатСоответствие = ПрочитатьJSON(ЧтениеJSON,Истина,"Дата",ФорматДатыJSON.ISO);


Ничего не происходит. "2020-10-14Т09:37:46+07:00" остается такой же
21. spacecraft 06.11.20 14:13 Сейчас в теме
(19) издеваетесь?
ДатаСоздания = Элемент.Получить ("createdDate");
ДатаЗакрытия = Элемент.Получить ("closedDate");
23. val_ka 09.11.20 06:25 Сейчас в теме
(21) спасибо, заработало, но есть другая проблема. В случае, если дата неопределена, то выдаёт ошибку.
18. Sashares 34 06.11.20 13:31 Сейчас в теме
(15) Вы строку преобразовываете в дату... Для этого не важно где она у вас до этого была.
12. Sashares 34 06.11.20 13:23 Сейчас в теме
(10)Он туда и переходит, если условие соблюдается.

тип "неопределено"

Почему тип то неопределено, если Неопределено это значение переменной.
Что вообще такое Тип Неопределено?
16. val_ka 06.11.20 13:26 Сейчас в теме
(12) я работаю с соответствием. У меня есть ключ, у которого значения нет.
Прикрепленные файлы:
20. x_x 2 06.11.20 13:54 Сейчас в теме
Не много не понятна применяемая вами терминология.
Получается вы используете соответствие и в соответствии у вас есть ключ значение которого пустое или у вас в этом соответствии нет нет значения с таким ключом?
в первом случае вернётся ответ с пустым значением, во втором неопределённо.
22. JasonT 06.11.20 14:31 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот