|   |   | 
| 
 | v7.7 Типа ТиС, самоделка. Разбираюсь с ТА | ☑ | ||
|---|---|---|---|---|
| 0
    
        aka AMIGO 09.01.17✎ 13:12 | 
        В Модуле формы
 Если ДатаДок >= ПолучитьДатуТА() Тогда РассчитатьРегистрыПО(ПолучитьДокументТА()); Иначе РассчитатьРегистрыНа(ДатаДок); КонецЕсли; ДатаДок = 9.01.17 В Общем журнале два дока: 9.01.17 12:32:00 проведен 9.01.17 12:54:00 не проведен Внизу на рамке окна ТА: 9.01.17 12:50:01 Откуда взялись эти 50 минут? должно быть 32, т.к. последний проведен именно в 32 минуты! Естественно, получитьДокументТА срабатывает с ошибкой.. Что двинуло ТА на 50 минут? в SysLog всё правильно.. И на эти "50" минут не попадает ни одной записи.. | |||
| 1
    
        Злопчинский 09.01.17✎ 13:14 | 
        Та не обязана совпадать с документом Используйте получитьта() | |||
| 2
    
        aka AMIGO 09.01.17✎ 13:15 | 
        (1) Резонно.. Спасибо, больше, пожалуй, ничего не нужно :)     | |||
| 3
    
        Джинн 09.01.17✎ 13:15 | 
        ПолучитьПозициюТА()     | |||
| 4
    
        Umga2002 09.01.17✎ 13:16 | 
        В последовательности не один вид документа.....
 а несколько... | |||
| 5
    
        aka AMIGO 09.01.17✎ 13:17 | 
        (3) Да, или так..
 Ладушки, сейчас попытаюсь проверить на локальной базе (4) - я-ж в Общий журнал-то смотрел.. и в ЖР.. чисто.. | |||
| 6
    
        aka AMIGO 09.01.17✎ 13:28 | 
        Применил ПолучитьТА() - ошибка ушла.
 (1) Отдельное спасибо еще раз :) И спасибо всем, вопрос закрыт :) | |||
| 7
    
        Злопчинский 09.01.17✎ 13:30 | 
        (6) там синтакспомощник есть, его можно просто листать по веткам, много интересного узнаещь     | |||
| 8
    
        aka AMIGO 09.01.17✎ 13:52 | 
        (7) В нём и пасусь :)
 Вот еще что увидел в отладчике: ПолучитьТА() = "09.01.2017 12:34:49" ПолучитьВремя(ПолучитьДокументТА()) = "12:42:11" ПолучитьДокументТА() = Счет СчИ-00003 (09.01.2017) У дока Счет время-таки 12:34:49   | |||
| 9
    
        aka AMIGO 09.01.17✎ 13:53 | ||||
| 10
    
        Злопчинский 09.01.17✎ 15:33 | 
        (8) не суетись Аккуратно работал и все ок | |||
| 11
    
        aka AMIGO 09.01.17✎ 15:47 | 
        (10) Как не суетиться-то.. Ведь совершенно непонятно: ТА установил на док.Счет, время его 12:34
 а функция ПолучитьВремя(ПолучитьДокТА()) возвращает 12:42 - время последнего документа, а не Счета... Т.е. прежде, чем применять функцию, надо в отладчике внимательно посмотреть, что-ж она возвратит-то.. Может, так и надо, чтобы в лаврах не утонуть :) | |||
| 12
    
        Злопчинский 09.01.17✎ 15:51 | 
        (11) получитьдокта что возвращает?     | |||
| 13
    
        Злопчинский 09.01.17✎ 15:57 | 
        Ну и для начала снести. Индексы и переиндексироваться     | |||
| 14
    
        гтщ 09.01.17✎ 15:57 | 
        Это все работает в модуле проведения перемещения и уже сделаны им какие то движения. где то была галочка типа построчное проведение или типа того.     | |||
| 15
    
        гтщ 09.01.17✎ 16:02 | 
        Думаю что это влияет.
 Актуальность(<?>) Синтаксис: Актуальность(<Флаг>) Назначение: Устанавливает или сбрасывает признак актуальности временных итогов. Возвращает: значение признака актуальности на момент до вызова функции. Параметры: <Флаг> - признак актуальности временного расчета итогов. Параметр может принимать значения: 1 - поддерживать временный расчет в актуальном состоянии; 0 - не поддерживать временный расчет в актуальном состоянии. Если не задан - значение не меняется. | |||
| 16
    
        aka AMIGO 09.01.17✎ 16:44 | 
        (12) Так в (8) я выложил ил окна отладчика:
 ПолучитьДокументТА() = Счет СчИ-00003 (09.01.2017) | |||
| 17
    
        aka AMIGO 09.01.17✎ 16:46 | 
        (14) нет, это всё в модуле формы, на форме есть кнопка "Проверка проведения", операторы (0) оттуда.     | |||
| 18
    
        Злопчинский 09.01.17✎ 16:52 | 
        (17) очень сомнительно, рискну сказать не верю     | |||
| 19
    
        aka AMIGO 09.01.17✎ 16:56 | 
        (18) Процедура ПроверкаНаПроведение()
 Если Проведен()=1 Тогда Сообщить("Документ уже проведен!"); Возврат; КонецЕсли; ДокНеПроводится=0; ТЗ = СоздатьОбъект("ТаблицаЗначений"); ВыгрузитьТабличнуюЧасть(ТЗ); ТЗ.НоваяКолонка("Поз"); ТЗ.Заполнить(1,,,"Поз"); ТЗ.Свернуть("Товар","Поз"); ТЗ.ВыбратьСтроки(); Пока ТЗ.ПолучитьСтроку() = 1 Цикл Если ТЗ.Поз>1 Тогда Сообщить("В табличной части дублируется Товар "+ТЗ.Товар); ДокНеПроводится=1; КонецЕсли; КонецЦикла; Если ДокНеПроводится=1 Тогда Сообщить("Документ НЕ может быть проведен!"); КонецЕсли; Если Склад.Выбран()=0 Тогда Сообщить("Не указан склад откуда производится перемещение!"); Возврат; КонецЕсли; Если СкладПолучатель.Выбран()=0 Тогда Сообщить("Не указан склад куда производится перемещение!"); Возврат; КонецЕсли; Рег2 = СоздатьОбъект("Регистр.ЧугунныйРезерв"); // по Регистру ОстаткиТоваров (здесь проходят учет все типы накладных ) Рег=СоздатьОбъект("Регистр.ОстаткиТоваров"); Рег1=СоздатьОбъект("Регистр.МонтажныеРаботы"); //Если ИтогиАктуальны()=0 Тогда Рег.ВременныйРасчет(); Рег1.ВременныйРасчет(); Рег2.ВременныйРасчет(); Если (ПустоеЗначение(ТекущийДокумент())=0) И (ДатаДок < ПолучитьДатуТА()) Тогда //док записан РассчитатьРегистрыНа(ТекущийДокумент()); Иначе Если ДатаДок >= ПолучитьДатуТА() Тогда РассчитатьРегистрыПО(ПолучитьДокументТА()); //РассчитатьРегистрыПо(ПолучитьТА()); Иначе РассчитатьРегистрыНа(ДатаДок); КонецЕсли; КонецЕсли; | |||
| 20
    
        aka AMIGO 09.01.17✎ 16:58 | ||||
| 21
    
        aka AMIGO 09.01.17✎ 17:00 | ||||
| 22
    
        Злопчинский 09.01.17✎ 17:01 | 
        Поехал домой. Заворачивай базу целиком в архив и на e.meil@mail.ru     | |||
| 23
    
        Tatitutu 09.01.17✎ 17:21 | 
        в журнале документов - правой кнопкой на крайнем документе - Установить ТА на документ (нужен монопольный режим)     | |||
| 24
    
        trdm 09.01.17✎ 17:31 | 
        (0) > 9.01.17 12:54:00 не проведен 
 > Внизу на рамке окна ТА: 9.01.17 12:50:01 Отменили проведение дока и записали. Время сдвинулось, ТА так и осталась в предней точке - не было смысла сдвигать. | |||
| 25
    
        Злопчинский 09.01.17✎ 19:02 | 
        (21) нафиг, базу давай.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |