CftClub.ru
Клуб специалистов ЦФТ-Банк

Подскажите, операция типа «печать»

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Справочник PL/PLUS: Функции, примеры, приёмы
Предыдущая тема :: Следующая тема  
Автор Сообщение
garsia
Участник со стажем


Вступление в Клуб: 01.11.2012
СообщениеЧт Дек 20, 2012 10:40   Подскажите, операция типа «печать» Ответить с цитатой
Полезность: Нет оценки
Подскажите, пожалуйста, у операции этого типа тело операции вообще не работает?
Как вообще можно определить, была выполнена печать или была нажата кнопка "отмена" ?
Задача такая - запретить повторную печать чека.
vtar
Эксперт


Вступление в Клуб: 20.03.2009
СообщениеЧт Дек 20, 2012 10:57    Ответить с цитатой
Полезность: Нет оценки
Может быть, можно в проверке через валидацию кнопок, или в клиент - скрипте .
garsia
Участник со стажем


Вступление в Клуб: 01.11.2012
СообщениеЧт Дек 20, 2012 11:08    Ответить с цитатой
Полезность: Нет оценки
vtar пишет:
Может быть, можно в проверке через валидацию кнопок, или в клиент - скрипте .


Да я рад бы... Но там в форме нет кнопок...
И клиент-скрипт тоже не работает...
vtar
Эксперт


Вступление в Клуб: 20.03.2009
СообщениеЧт Дек 20, 2012 11:38    Ответить с цитатой
Полезность: Нет оценки
А если кнопку "отмена" запретить ?
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеЧт Дек 20, 2012 11:55    Ответить с цитатой
Полезность: Нет оценки
Ну у вас и извращения Laughing
Ну напечатали 2 раза и что такого страшного?

Как вариант можно эту операцию на аудит на запуск операции поставить и проверять там её. Если есть - то написать ругательства, если нет, то печатать.
При нажатии "отмена" в данном случае запись в аудите не должна создаваться.
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеЧт Дек 20, 2012 12:48    Ответить с цитатой
Полезность: Нет оценки
Операцию обертку, которая будет анализировать была выполнена печать документа или нет, если нет то после печати в историю состояний прописывать признак, что печать выполнена. Либо, если это печать документа вставить такой анализ в операцию "PRINT_DOC" с аналогичным функцоналом
_________________
всегда есть как минимум 2 выхода
garsia
Участник со стажем


Вступление в Клуб: 01.11.2012
СообщениеЧт Дек 20, 2012 15:07    Ответить с цитатой
Полезность: Нет оценки
Alexsey пишет:
Операцию обертку, которая будет анализировать была выполнена печать документа или нет, если нет то после печати в историю состояний прописывать признак, что печать выполнена. Либо, если это печать документа вставить такой анализ в операцию "PRINT_DOC" с аналогичным функцоналом


Спасибо, но все это не то.
Я спрашиваю про операцию типа "ПЕЧАТЬ", пусть даже не дистрибутивная - у таких операций нет экранной формы, вместо нее - превьюшка печати.
Я не уверен на 100 %, но похоже, что для этого типа операции выполняется только код "ПРОВЕРКА" - и больше ничего!
Как обертка узнает, был вывод на принтер, или отменен?

P.S. Я могу навесить запись признака печати на блок проверки, но это некорректно, поскольку остается возможность выйти без печати, а второй раз вызвать эту операцию уже будет нельзя.
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеЧт Дек 20, 2012 15:29    Ответить с цитатой
Полезность: Нет оценки
А чем вам мой вариант не нравиться?

1. Ставите операцию на аудит
2. В секторе проверки по аудиту проверяете что эта операция для этого экземпляра была выполнена.
3. Если есть запись - ругаетесь нецензурно, если нет - пропускаете пользователя в неё.

З.Ы. если операция запускалась, но не выполнялась (т.е. нажали отмена), в аудите будет только запись "Запущена". Если нажали "ОК" то аудит запишет "Выполнена"
garsia
Участник со стажем


Вступление в Клуб: 01.11.2012
СообщениеЧт Дек 20, 2012 16:30    Ответить с цитатой
Полезность: Нет оценки
1. Ставите операцию на аудит
2. В секторе проверки по аудиту проверяете что эта операция для этого экземпляра была выполнена.
3. Если есть запись - ругаетесь нецензурно, если нет - пропускаете пользователя в неё.

З.Ы. если операция запускалась, но не выполнялась (т.е. нажали отмена), в аудите будет только запись "Запущена". Если нажали "ОК" то аудит запишет "Выполнена"[/quote]

Надо проверить... )
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеЧт Дек 20, 2012 17:26    Ответить с цитатой
Полезность: Нет оценки
garsia пишет:
Alexsey пишет:
Операцию обертку, которая будет анализировать была выполнена печать документа или нет, если нет то после печати в историю состояний прописывать признак, что печать выполнена. Либо, если это печать документа вставить такой анализ в операцию "PRINT_DOC" с аналогичным функцоналом


Спасибо, но все это не то.
Я спрашиваю про операцию типа "ПЕЧАТЬ", пусть даже не дистрибутивная - у таких операций нет экранной формы, вместо нее - превьюшка печати.
Я не уверен на 100 %, но похоже, что для этого типа операции выполняется только код "ПРОВЕРКА" - и больше ничего!
Как обертка узнает, был вывод на принтер, или отменен?

P.S. Я могу навесить запись признака печати на блок проверки, но это некорректно, поскольку остается возможность выйти без печати, а второй раз вызвать эту операцию уже будет нельзя.


в операции обертке вызов производится в клиент-скрипте через PlayEx

Цитата:
Синтаксис

result As Long

Runtime.PlayEx(plpCallText As String)

Описание

Вызвать операцию через PLPCALL-синтаксис (подробнее см. документ "Вызов экранной формы операции с передачей параметров"). В случае успешного вызова операции возвращает значение 1, в противном случае (ошибки формирования строки, ошибки при выполнении, выход из экранной формы операции по кнопке "Отмена") – возвращает 0.

Пример

Sub Button3_OnClick

ss = "<% PLPCALL NEWREF:=[TESTCONST].NEW#AUTO() %>"

Form1.ScriptPlayEx ss

End Sub

_________________
всегда есть как минимум 2 выхода
garsia
Участник со стажем


Вступление в Клуб: 01.11.2012
СообщениеСб Дек 22, 2012 14:01    Ответить с цитатой
Полезность: Нет оценки
Цитата:

вызов производится в клиент-скрипте через PlayEx


Спасибо! Это то - что нужно!
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Справочник PL/PLUS: Функции, примеры, приёмы Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru