Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Сравнение даты
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование обычных форм 1С 8.2 и не интерфейсной логики
gorik77
                            ДатаНаименования = Формат(Шапка.Дата, "ДФ=ddMMyyyy");
        
        ДатаИмени        = Формат(Организация.ДатаИмени,"ДФ=ddMMyyyy");
        
        ДатаПроба = Формат("06062012","ДФ=ddMMyyyy");
            
    Если   НачалоДня(Дата("ДатаНаименования")) < НачалоДня(Дата("ДатаПроба")) Тогда
        ОбластьМакета.Параметры.НазваниеОрганизации           = Организация.НаименованиеДляНН;  
        
    Иначе
        ОбластьМакета.Параметры.НазваниеОрганизации           = Организация.НаименованиеДляННСИюня;
    КонецЕсли;


Помогите разобраться в чем проблема.
Документ.НалоговаяНакладная.МодульОбъекта(249)}: Преобразование значения к типу Дата не может быть выполнено
Если НачалоДня(Дата("ДатаНаименования")) < НачалоДня(Дата("ДатаПроба")) Тогда
Ziam
Попробуйте без функции Формат() Сравнивать даты напрямую, без преобразования
gorik77
Цитата(Ziam @ 08.06.12, 12:17) необходимо зарегистрироваться для просмотра ссылки
Функция Формат() возвращает текст.
А для текста операций сравнения < > нет


допустим я не буду преобразовывать имеющуюся дату, ну как же тогда преобразовать простое число в дату?
logist
Цитата(Ziam @ 08.06.12, 12:17) необходимо зарегистрироваться для просмотра ссылки
А для текста операций сравнения < > нет

да ну? Прям таки нет? )))

На самом деле всё проще
    Если   НачалоДня(Дата(ДатаНаименования)) < НачалоДня(Дата(ДатаПроба)) Тогда

Параметр это не текст а значение, всё таки.
gorik77

Цитата(logist @ 08.06.12, 12:20) необходимо зарегистрироваться для просмотра ссылки
Если НачалоДня(Дата(ДатаНаименования)) < НачалоДня(Дата(ДатаПроба)) Тогда


Ето тоже не работает, ето был первый вариант ((
ignsv
мне кажится проблема в том что Дата неправильного формата: у вас: "06062012", а попробуйте "20120606" . И в дату конверитрует нормально
MATEVI
//ДатаНаименования = Формат(Шапка.Дата, "ДФ=ddMMyyyy");

ДатаПроба = Дата(2012,06,06);//Формат("06062012","ДФ=ddMMyyyy");
Если Шапка.Дата < ДатаПроба
gorik77
ДатаНаименования = Формат(Шапка.Дата, "ДФ=ddMMyyyy");
Сообщить("Дата" + ДатаНаименования);
Сообщить(Шапка.Дата);


Дата07.06.2012
07.06.2012 0:00:00


Странно но работает

ДатаПроба = Дата(2012,06,06);
            Сообщить("ДатаПроба" + ДатаПроба);
            
        Если   НачалоДня(Дата(Шапка.Дата)) < НачалоДня(Дата(ДатаПроба)) Тогда
        ОбластьМакета.Параметры.НазваниеОрганизации           = Организация.НаименованиеДляНН;  
        Сообщить("До июня");
        Иначе
        ОбластьМакета.Параметры.НазваниеОрганизации           = Организация.НаименованиеДляННСИюня;
        КонецЕсли;


ДатаПроба06.06.2012 0:00:00 странно преобразовует, переварачивает с ног на голову )))
pablo
Проблема записи "06062012" не только в порядке, но и в кавычках. Они должны быть одинарными. А вообще - учитесь пользоваться встроенной справкой.
Ziam
Цитата(logist @ 08.06.12, 12:20) необходимо зарегистрироваться для просмотра ссылки
да ну? Прям таки нет? )))


поймали меня за первую редакцию сообщения. ))
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.