8.х Прибавить кол-во дней к дате

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем xxx949, 13 дек 2010.

  1. TopicStarter Overlay
    xxx949
    Offline

    xxx949 Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    302
    Симпатии:
    1
    Баллы:
    29
    Привет всем кодерам!
    Подскажите пожалуйста, в документе есть табличное поле, в нем три столбика, ДатаНачала, Дней, ДатаОкончания. Как получить ДатаОкончания, прибавив к ДатаНачала кол-во Дней.

    Я в поле Дней делаю процедуру ПриИзменении, где пишу следующий код:

    Код:
    ЭлементыФормы.РаботникиОрганизации.Колонки.ДатаОкончания =
    ЭлементыФормы.РаботникиОрганизации.Колонки.ДатаНачала +
    ЭлементыФормы.РаботникиОрганизации.Колонки.Дней * 24 * 60 * 60;
    
    
    Проверяю работу в 1С, а он мне пишет:

    Преобразование значения к типу Число не может быть выполнено
    ЭлементыФормы.РаботникиОрганизации.Колонки.ДатаОкончания = ЭлементыФормы.РаботникиОрганизации.Колонки.ДатаНачала + ЭлементыФормы.РаботникиОрганизации.Колонки.Дней * 24 * 60 * 60;

    Подскажите пожалуйста, в чем дело, где я чего упустил?
  2. Наташа
    Offline

    Наташа Опытный в 1С

    Регистрация:
    14 авг 2010
    Сообщения:
    1.442
    Симпатии:
    2
    Баллы:
    29
    Вы колонке пытаетесь значение присвоить %) Нужно построчно пройтись по табличке и в каждой строке посчитать :)
    Код:
    Для каждого Стр из РаботникиОрганизации Цикл
    Стр.ДатаОкончания = Стр.ДатаНачала + Стр.Дней * 24 * 60 * 60; 
    КонецЦикла 
    
  3. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    Код:
    ТекСтрока = ЭлементыФормы.РаботникиОрганизации.ТекущиеДанные;
    ТекСтрока.ДатаОкончания = ТекСтрока.ДатаНачала + ТекСтрока.Дней * 24 * 60 * 60;
    
    Не нужно построчно проходить.
  4. Наташа
    Offline

    Наташа Опытный в 1С

    Регистрация:
    14 авг 2010
    Сообщения:
    1.442
    Симпатии:
    2
    Баллы:
    29
    Согласна, я как-то выборочно прочитала, не заметила про изменение %) ваш вариант вернее ;)
  5. TopicStarter Overlay
    xxx949
    Offline

    xxx949 Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    302
    Симпатии:
    1
    Баллы:
    29
    Спасибо. Это конечно здорово, но как все-таки при введении числа (кол-ва дней) в колонку автоматом получить конечную дату в следующей колонке?

    Спасибо ВСЕМ за помощь, а вроде как подумал, что правильно написал, но видмио что-то все-таки упустил. СПАСИБО ВСЕМ огромное!!!

    А подскажите еще пожалуйста, если есть и заполнен производственный колендарь? То как вычислить конечную дату не считая выходных и праздников???
  6. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Не знаю вашу конфигурацию.
    Попробуйте "ЗаполнениеДокументов.ОпределитьДату(ДатаНач, ЧислоДней)".
  7. TopicStarter Overlay
    xxx949
    Offline

    xxx949 Опытный в 1С

    Регистрация:
    29 июл 2010
    Сообщения:
    302
    Симпатии:
    1
    Баллы:
    29
    К меня ЗУП 2.5

    А по подробнее можно как ее использовать?
  8. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Я смотрю продолжение этого вопроса здесь: http://www.1c-pro.ru/index.php?showtopic=28372

Поделиться этой страницей