Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 08:56

как рассчитать дату НаКлиенте ПриИзменении

Автор wswolf14, 13 ноя 2012, 14:05

0 Пользователей и 1 гость просматривают эту тему.

wswolf14

Добрый день!
суть проблемы в следующем:
Пишу небольшое прикладное решение для друзей, ни как не могу рассчитать дату возврата товара(ломбард), 2 дня бьюсь, но постоянно вылезают какие то ошибки.
На данный момент остановился на следующем варианте:

&НаКлиенте
Процедура ГлавнаяНаСрокПриИзменении(Элемент)
   
   Элементы.ГлавнаяВозвратить = ЭЛЕМЕНТЫ.ГлавнаяДата + Дата (Элементы.ГлавнаяНаСрок * 60 * 60 * 24);
   
   
КонецПроцедуры

где: Возвратить-тип Дата, Дата-тип Дата, НаСрок-тип Число.
при выполнении расчета выдает ошибку невозможно привести к типу число(((
в чем ошибка или как можно более удобно выполнить такой расчет

MuI_I_Ika

Что вы хотите получить от сложения двух дат?

cska-fanat-kz

Элементы.ГлавнаяВозвратить = ЭЛЕМЕНТЫ.ГлавнаяДата + Элементы.ГлавнаяНаСрок * 60 * 60 * 24;
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

wswolf14

в итоге хочу получить дату возврата(писал в 0), т е человек пришел, например, сдал мобилу за 10 к на 30 дней под 10 процентов 1.01.2012 соответственно автоматом должна рассчитаться дата возврата денежных средств с процентом.

    cska-fanat-kz, такой вариант к сожалению уже пробовался и не подходит, после попытки расчета выдает следующую ошибку:
{Документ.РасходныйОрдер.Форма.ФормаДокумента.Форма(6)}: Преобразование значения к типу Число не может быть выполнено
   Элементы.ГлавнаяВозвратить = ЭЛЕМЕНТЫ.ГлавнаяДата + Элементы.ГлавнаяНаСрок * 60 * 60 * 24;


Добавлено: 14 ноя 2012, 10:03


я вот ни как не могу понять, почему он вообще пытается привести к типу число?
поидеи: число с помощью *60*60*24 мы переводим в тип дата, остальные 2-а реквизита и так дата, почему тогда приводит к типу число?

cska-fanat-kz

Это у вас документ?
И предположу что это все реквизиты документа?
Тогда надо


ОБЪЕКТ.ГлавнаяВозвратить = ОБЪЕКТ.ГлавнаяДата + ОБЪЕКТ.ГлавнаяНаСрок * 60 * 60 * 24;


"Элементы.ГлавнаяНаСрок" - это элемент управления, а не его значение...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

wswolf14

    cska-fanat-kz, большое Вам спасибо. он теперь ругается на поля, но хотя бы теперь понял где я ошибся. Буду учиться дальше.


Добавлено: 14 ноя 2012, 11:26


в общем сделал как посоветовал KZ, но поменял форму документа, т. к. к сожалению моего мозга не хватило как извлечь данные из табличной части))перенес реквизиты в непосредственно в форму документа и все заработало:zebzdr:

&НаКлиенте
Процедура НаСрокПриИзменении(Элемент)
   Объект.Возвратить=Объект.Дата+Объект.НаСрок*60*60*24;
КонецПроцедуры

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск