![]() |
![]() |
![]() |
|
Научите работать с периодичностью | ☑ | ||
---|---|---|---|---|
0
picom
24.01.12
✎
09:09
|
Имеем дату старта
10,01,2012 . имеем периодичность повторения операции каждый понедельник и каждый четверг . Как получить приближающиеся даты выполнения операции? . Повторения могут быть как еженедельные, итак и каждые 2...n недель |
|||
1
Ненавижу 1С
гуру
24.01.12
✎
09:21
|
огласи задачу полностью
|
|||
2
MatrosoV AleXXXand_R
24.01.12
✎
09:23
|
Шо хочет сделать ТС?
Извечный вопрос |
|||
3
0xFFFFFF
24.01.12
✎
09:39
|
(0) регламентные задания, расписание регламентного задания?
|
|||
4
picom
24.01.12
✎
10:25
|
(3) эх если бы
хочу расписание автобусов в 1с сделать например 35 автобус ходит во ВТ один раз в 3 недели (четность не катит) |
|||
5
DrShad
24.01.12
✎
10:29
|
сделай как в ЗУПе графики смен
|
|||
6
Axel2009
24.01.12
✎
10:31
|
(4) ну до 31го еще есть время =)
|
|||
7
picom
24.01.12
✎
10:44
|
(6) нет времени (
(5) не представляю как это |
|||
8
Azverin
24.01.12
✎
10:48
|
(5) гуд айдийа!
|
|||
9
picom
24.01.12
✎
10:50
|
(8) (5) расскажите как там, у меня нет ни опыта ни зуп,а (
|
|||
10
Azverin
24.01.12
✎
10:52
|
(9) я нет, может Роман сможет)
|
|||
11
picom
24.01.12
✎
10:53
|
(10) Посмотрел видео, там вообще засада с графиками, исключениями и прочей ерундой
Мегаусложнения какие-то для моей задачи |
|||
12
Axel2009
24.01.12
✎
11:10
|
да убери исключения и все праздники и будет работать. делов то
|
|||
13
picom
24.01.12
✎
12:59
|
Сделал
Если Стр.Периодичность > 1 Тогда //Сложный запуск //попробуем выснить на когда //посчитаем на 30 дней вперед ДатаЗапускаСхемы = НачалоНедели(Стр.ДатаСтарта) ; // ПН и на этой неделе запускались ДатаСтарта = НачалоДня(ТекущаяДата()); Для it = 0 По СколькоДней Цикл Если Сред(Стр.График,ДеньНедели(ДатаСтарта),1) = "1" Тогда //Сколько недель прошло СколькоПрошлоНедель = ПолучитьРазностьДат(ДатаЗапускаСхемы,НачалоНедели(ДатаСтарта))/7; //Сообщить(СколькоПрошлоНедель); Геометрия = 0 ; Пока Геометрия < 1000 Цикл //КонецЦикла; //Для Геометрия = 0 По 1000 Цикл Геометрия = Геометрия + Стр.Периодичность; Если Геометрия = СколькоПрошлоНедель Тогда Если Сред(Стр.График,ДеньНедели(ДатаСтарта),1) = "1" Тогда РеалСтр = РеальныеРейсы.Добавить(); РеалСтр.ДатаСтарта = Стр.ДатаСтарта; РеалСтр.Периодичность = Стр.Периодичность; РеалСтр.График = Стр.График; РеалСтр.ДатаРейса = ДатаСтарта; РеалСтр.Описание = "Периодический рейс"; КонецЕсли; Прервать; КонецЕсли; КонецЦикла; КонецЕсли; ДатаСтарта = ТекущаяДата() + it * 86400;; КонецЦикла; КонецЕсли; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |