Время на печатной форме документа в ТиС 7.7

1. ceramica 13 05.06.13 20:07 Сейчас в теме
Доброго всем вечера! Помогите пожалуйста вывести время проведения документа (Чек ККМ) на печатную форму(товарный чек).Версия ТиС 7.7 . У самого не получается или подскажите где это реализовано в типовой что бы посмотреть
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
8. falcon 06.06.13 15:01 Сейчас в теме
(1) ceramica, если тебе надо получить время с которым записан проведенный документ, то используешь
ПолучитьВремя()... в этом случае, ты получишь время "последнего проведения" документа.

а если ты хочешь получить время РЕАЛЬНОГО проведения документа, то придется добавить в документ реквизит "ВремяПроведения" и писать в него в момент проведения результат ТекущееВремя(), однако стоит учесть, что ТекущееВремя() - вернет системное время, а оно может отличаться от РЕАЛЬНОГО....
2. Nick_Tick 05.06.13 20:22 Сейчас в теме
В методах формы документа есть Док.ПолучитьВремя(Часы, Минуты, Секунды)
Если в форме открытого документа, то просто ПолучитьВремя(Часы, Минуты, Секунды)
Переменные должны быть описаны до вызова метода (Перем). После выполнения метода имеют тип "Число".
Надеюсь, скомпоновать в строку вроде
Формат(Часы, "Ч02.0")+":"+Формат(Минуты, "Ч02.0")+":"Формат(Секунды, "Ч02.0");
и вывести её на форму вы сможете.
3. panda-34 38 06.06.13 02:53 Сейчас в теме
(2)Это какой-то очень странный формат для времени. Тут, я думаю, нужен
Формат(Часы, "Ч(0)2")+":"+Формат(Минуты, "Ч(0)2")+":"+Формат(Секунды, "Ч(0)2");

А вообще гораздо проще:
Док.ПолучитьВремя()
4. Timesoft 271 06.06.13 13:19 Сейчас в теме
1) ПолучитьВремя() - это время документа, которое по разным причинам может никак не совпадать с реальным временем, поэтому в зависимости от того, какое время надо вывести, возможно следует обратить внимание и на ТекущееВремя()
2) ПолучитьВремя() можно использовать только для объектов, созданных функцией СоздатьОбъект (ЖКК), поэтому при вводе и интерактивном проведении вероятно (не проверял) работать не будет. Можно конечно исхитриться создав объект и спозиционировав его на текущем документе
5. serg261263 15 06.06.13 14:12 Сейчас в теме
Пробуйте "ТекущееВремя()". в бухгалтерии хорошо работает.
6. AlexShap 2 06.06.13 14:54 Сейчас в теме
(5) serg261263,
Если все таки задача стоит вывести время проведения документа, то надо использовать ПолучитьВремя(). А ТекущееВремя() использовать если выводить время печати Чека. :)
7. Nick_Tick 06.06.13 14:58 Сейчас в теме
С учётом, высказанных поправок код получится примерно такой:
Перем Час, Мин, Сек;
Вспом = СоздатьОбъект("Документ.ЧекККМ");
Вспом.НайтиДокумент(ТекущийДокумент);
Вспом.ПолучитьВремя(Час, Мин, Сек);
ПечВремя = Формат(Час, "Ч(0)2")+":"+Формат(Мин, "Ч(0)2")+":"+Формат(Сек, "Ч(0)2");

Примечание: При перепроведении документа время изменяется. Обычно на текущее, но может выдаваться запрос.
9. AlexShap 2 06.06.13 15:02 Сейчас в теме
(7) Nick_Tick,

Так ЧекККМ должен один раз печататься? Если да, то надо еще признак установить, что он печатался. И больше его не могли распечатать. И повторное проведение по этому реквизиту-признаку можно заблокировать.
10. falcon 06.06.13 15:03 Сейчас в теме
(7) Nick_Tick,
для получения ЧЧ.ММ.СС, достаточно написать

ПечВремя = Вспом.ПолучитьВремя();
11. Иваныч 23 05.04.23 16:19 Сейчас в теме
ВремяПечати = ТекущееВремя(,,);
На печатной форме вставить
12. user856012 14 05.04.23 19:05 Сейчас в теме
(11) Эххх, два месяца до юбилейного червонца не дотерпел!
Иваныч; +1 Ответить
13. Иваныч 23 06.04.23 08:02 Сейчас в теме
(12) Могу исправиться :), подождать и выложить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот