|     0
            - 11.03.2015 - 17:37
           |      
                    Задача, сделать рассылку смс за 8 часов и за 1 час. Есть регламентированное задание которое запускается примерно каждые 3 минуты. В нем делается запрос документов в течении года. Высчитывается дата от которой нужно делать отправку смс: | ДатаВремяОтправки = ДатаДок - КолЧасов * 3600; | как действовать потом? Как выявлять момент что текущая дата уже за 8 часов от ДатаВремяОтправки, и выполнить необходимый код. Или же что текущая дата за 1 час от ДатаВремяОтправки и так же выполнить код делающий отправку смс?  |    |  
|     1
            - 11.03.2015 - 17:40
           |  эээ... вычитание не предлагать? |   |  
|     2
            - 11.03.2015 - 17:45
           |     
			
			
                (1) а что из чего???? не совсем понимаю, стал делать по одному примеру, но что то вижу не рабочий вариант: ДатаВремяОтправки = ДатаВремяПодачиТранспортаНСО - КолЧасов * 3600; // ДиапазонОтСтарта = ТекущаяДата() - ДатаВремяОтправки; ДиапазонОтСтарта = МАКС(ДиапазонОтСтарта , -ДиапазонОтСтарта); // Сообщить(Строка(н) + "). " + Строка(СтрТз.СсылкаЗаказТрансфера) + " Диапазон старта «" + Строка(ДиапазонОтСтарта) + "», ДатаВремяОтправки " + Строка(ДатаВремяОтправки)); // Если ДиапазонОтСтарта < (60 * (КолЧасов * 60)) Тогда  |    |  
|     3
            - 11.03.2015 - 17:47
           |  (1) я получил ДатаВремяОтправки, это дата за вычетом требуемого количества часов от нужной даты, как мне сейчас отлавливать момент что она равна "примерно" текущаей дате? |   |  
|     4
            - 11.03.2015 - 17:50
           |  Если ТекущаяДата() > ДатаВремяОтправки И СМСещеНЕотправлено Тогда ОтправитьСМС() КонецЕсли; |   |  
|     5
            - 11.03.2015 - 17:57
           |     
			
			
                (4) да пробовал так, но как то тоже не подходит!!! СМСЕщёНЕотправлено, это да! фильтруется в запросе, то есть уже отправленым повторно отправляться не будет. Они будут отсутствовать в выборке. Но как то не пойму!!! В (4) тоже мне кажется не надежное и не универсальное решение. Нужно как то хитрее.  |    |  
|     6
            - 11.03.2015 - 18:19
           |  5-LivingStar > в (4) необходимое и достаточное условие, что еще надо? |   |  
|     7
            - 11.03.2015 - 18:32
           |     
			
			
                (6) ну ладно завтра попробую, вот так тогда просто Если ТекущаяДата() > ДатаВремяОтправки так как в выборке и так те по которым не было отправки  |    |  
|     8
            - 11.03.2015 - 18:37
           |  () так а если там старые всякие смс по которым не было отправки, и текущая дата будет всегда больше ихней, а по ним не надо делать отправку, то есть будет контролироваться что не за час или за 8 часов а просто что текущая дата стала больше |   |  
|     9
            - 11.03.2015 - 18:48
           |  (6) в базе много данных, так как я отбираю за год, то там есть и документы за несколько месяцев, что просто попадут под условия, а нужно за 8 часов и за час. |   |  
|     10
            - 11.03.2015 - 19:17
           |  зачем тогда за год? |   |  
|     11
            - 11.03.2015 - 21:53
           |     
			
			
                (0) ЗАЧЕМ? Цель раскрой, время-то тебе зачем? Если ты спамишь, спамера интересует размер кучи говна, кою на бедных пользователей вываливаете, а время-то зачем? Извращенное удовольствие? Или что-то техническое?  |    |  
|     12
            - 11.03.2015 - 22:21
           |     
			
			
                Как вариант, моя контора спамит наших клиентов порядка 10000 рассылок СМС в день. В каждой из них написано: "Мы тебе кучу бабла заслали".  |    |  
|     13
            - 11.03.2015 - 22:23
           |     
			
			
                Так вот время - интересует провайдера СМС. Если мы чё-то 30 тысяч счастливчиков осчастливить готовы деньгами, то провайдер чё-то сопротивляется 30 000 СМС.  |    |  
|     14
            - 12.03.2015 - 00:01
           |  13-DeiMos > Дык провайдеру время зачем? Его объем интересует: в количестве рассылок, и в мегабайтах в общем. |   |  
|     15
            - 12.03.2015 - 06:27
           |  (10) подразумевая то что заказы в документах могут делаться на длительный период вперед, за год что бы не потерять такие |   |  
|     16
            - 12.03.2015 - 06:29
           |     
			
			
                (11) это смс информировании клиента о заказанной услуге, в данное время менеджеры делают это по кнопке из документа к каждому документу привязано дата время предаставляемой услуги услуги, нужно автоматизировать отправку смс за 8 часов и за 1 час  |    |  
|     17
            - 12.03.2015 - 06:52
           |     
			
			
                как вам вот такое решение? Если ДатаВремяОтправки < ТекущаяДата() и ДатаВремяОтправки > ТекущаяДата()-60*(КолЧасов*60) Тогда ДатаВремяОтправки становится меньше ТекущаяДата() и ДатаВремяОтправки больше ТекущаяДата() минус час или 8 часов то есть как только ДатаВремяОтправки попадает в промежуток за 8 часов или за 1 час в который нужно отправить смс, так как регламентное задание выполняется примерно каждые 3 минуты, погрешность будет не большая  |    |  
|     18
            - 12.03.2015 - 10:34
           |  8-LivingStar > по "старым" ты должен заранее позаботиться и не включать их в выборку |   |  
|     19
            - 12.03.2015 - 14:02
           |  17-LivingStar > это за 8 часов она у тебя 160 раз уйдёт. клиент порадуется. веди учёт фактов отправки смс. |   |  
|     20
            - 12.03.2015 - 14:26
           |  19-Зелёный тролль > см.(5) |   |  
 Интернет-форум Краснодарского края и Краснодара |