WebDev2030
@WebDev2030
Битриксоид до мозга и костей

Как в 1С прибавить одну минут ко всем документам отбора?

Всем привет.
У меня почему-то дата всех документов "реализация ТМЗ и услуг" меньше на одну минуту чем "заказ покупателя".
Почему такое могло произойти?

Как можно применить к ним всем разом изменение даты по формуле: дата текущего документа + 1 минуту и провести?
  • Вопрос задан
  • 53 просмотра
Решения вопроса 2
fosihas
@fosihas
Автоматизации учета на 1С.
перебор
ДокОбъект = СсылкаНаДокумент.ПолучитьОбъект(); 
ДокОбъект.Дата = ДокОбъект.Дата + 1; 
ДокОбъект.Записать();

или
подмените дату взяв дату заказа.
ДокОбъект = СсылкаНаДокумент.ПолучитьОбъект(); 
ДокОбъект.Дата = ДокОбъект.Заказ.Дата + 1; 
ДокОбъект.Записать();


Можно поставить проверку или заполнение даты При записи документа.
Ответ написан
@Dementor
программист, архитектор, аналитик
Почему такое могло произойти?

В торговых документах во всех типовых конфигурациях включено оперативное проведение. Это значит, что при каждой записи в рамках текущего дня, у документа устанавливается текущее время. В вашем случае, кто-то создавал и проводил реализации, а потом тут же заходил в заказ и делал там какую-то мелкую правку (как пример, в комментарии записал, что отгрузка прошла). Или кто-то вам сделал такую "доработку" - изучайте код своей конфигурации.

Как можно применить к ним всем разом изменение даты по формуле: дата текущего документа + 1 минуту и провести?

Выше Константин правильно написал. Нет никакого массового Replace/Update - нужно каждый документ явно получить и исправить. Далее копия моего комментария:
-----------
Код можно немного модифицировать и выполнить в разделе произвольного алгоритма в стандартной обработке с ИТС - "Универсальный подбор и обработка объектов":
Объект.Дата = Объект.Дата + 60; 
Объект.Записать();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы