Текущее время: Пт, окт 31 2025, 00:56

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Ввод причины отклонения.
СообщениеДобавлено: Пт, май 25 2007, 16:54 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, янв 26 2007, 08:42
Сообщения: 175
Посоветуйте, как можно организовать ввод причины отклонения с возвожностью передачи и показа ее текста инициатору?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 25 2007, 17:12 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 08:54
Сообщения: 123
Пол: Мужской
"заставить" отклоняющего прикреплять документ с текстом причины и отправлять обратно сообщение с приложением инициатору?

Для надежности не позволять завершать задачу без приложений :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, май 28 2007, 08:47 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, янв 26 2007, 08:42
Сообщения: 175
Сложновато будет пользователя заставить создать приложение. Ведь так много кнопочек надо нажать :-). Я видел метод, когда в случае отказа вызывается метод БО, в котором используется многострочный редактор, а потом в контейнере текст передается в ПО и далее инициатору. Но должно же в Workflow быть что-то стандартное для этих целей?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, май 28 2007, 09:25 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Вс, июн 26 2005, 22:41
Сообщения: 1135
Откуда: Москва
Пол: Мужской
Можно метод в бизнес объекте написать для ввода и хранения причины отклонения.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, май 28 2007, 09:47 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, янв 26 2007, 08:42
Сообщения: 175
Bkmz написал:
Можно метод в бизнес объекте написать для ввода и хранения причины отклонения.

Можно подробнее об этом?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, май 28 2007, 12:58 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Вс, июн 26 2005, 22:41
Сообщения: 1135
Откуда: Москва
Пол: Мужской
В бизнес объекте делаете метод аля EnterReasonForReject к нему цепляете вызов абаповской формы для ввода причины отклонения, логику куда что и как сохранять придумываете сами. В WF вытаскиваете этот метод и ставите его в шаг ПО после принятие решения об отклонении. В результате когда пользователь отклоняет ПО, к нему приходит на пошту задача ввода причины отклонения, он ее выполняет, открывается ваше ABAP приложение куда он и вводит причину.
Лично я делал немного по другому: у меня принятие решения пользователя выполнялось в ABAP интерфейсе (самописной форме), там же был и ввод причины отклонения реализован, по результатам действия в форме (принял или отклонил), ПО уходил в разные ветки по логике WF.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, май 28 2007, 14:09 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, янв 26 2007, 08:42
Сообщения: 175
Концепция понятна, но есть вопросы по самому ABAP отчету. У ABAPеров в ветке наковырял пример многострочного редактора SAPSCRIPT_DEMO_NOTE_EDITOR. Взять его за основу или есть что-то еще?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, май 28 2007, 16:50 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Вс, июн 26 2005, 22:41
Сообщения: 1135
Откуда: Москва
Пол: Мужской
У меня причина отклонения было простое поле 255 символов, вполне хватало :wink:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, май 28 2007, 17:49 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
Лучше конечно эту формочку не после присылать, а <я не знать русский языка> влезть в диалог сразу же после отклонения. Т.е. пользователь жмет "отклонить" - ему выпрыгивает к примеру окошко ввода заметки (note из generic object services) - он вбивает текст - происходит автоматом приаттачивание заметки к инстанции бизнес-объекта (устойчивая локальная сццылка) - в превью рабочего места сразу же видим линку на эту заметку. Ну эта типа совсем красиво было бы... 8)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, май 29 2007, 08:28 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, янв 26 2007, 08:42
Сообщения: 175
John Doe, это слишком красиво :D
Ну если WorkFlow создано для согласования, то почему немцы не предусмотрели этот момент изначально? Ведь могли бы добавить шаг "Комментарий к решению пользователя"?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, май 29 2007, 08:56 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Вс, июн 26 2005, 22:41
Сообщения: 1135
Откуда: Москва
Пол: Мужской
w_f написал(а):
J...если WorkFlow создано для согласования, то почему немцы не предусмотрели ... шаг "Комментарий к решению пользователя"?

Потомучто немцы работают по регламенту.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re:
СообщениеДобавлено: Ср, апр 15 2009, 15:55 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, фев 16 2009, 08:40
Сообщения: 56
Пол: Женский
John Doe написал:
Лучше конечно эту формочку не после присылать, а <я не знаю русского языка> влезть в диалог сразу же после отклонения. Т.е. пользователь жмет "отклонить" - ему выпрыгивает к примеру окошко ввода заметки (note из generic object services) - он вбивает текст - происходит автоматом приаттачивание заметки к инстанции бизнес-объекта (устойчивая локальная сццылка) - в превью рабочего места сразу же видим линку на эту заметку. Ну эта типа совсем красиво было бы... 8)

Так и сделали. Для этого ввод заметки реализован как метод пользовательского БО "после ЭПО" в этой же задаче.
Но получается, что он выполняется при любом решении пользователя. А хотелось бы, чтобы выполнялось только при отклонении. Для этого пытаемся передать переменную _WI_Result (Результат метода объекта) из контейнера задачи "Решение пользователя" в метод пользовательского БО с помощью SWC_GET_ELEMENT CONTAINER. Но система почему-то упорно не хочет присваивать этой переменной нужное значение (т.е., _WI_Result). Хотя сам _WI_Result в просмотре журнала ПО ненулевой. Может, кто подскажет в чем ошибка передачи переменной из контейнера задачи в контейнер метода "после ЭПО" пользовательского бизнес-объекта...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Re:
СообщениеДобавлено: Ср, апр 15 2009, 22:19 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
MaryV написала:
Так и сделали. Для этого ввод заметки реализован как метод пользовательского БО "после ЭПО" в этой же задаче.
Но получается, что он выполняется при любом решении пользователя. А хотелось бы, чтобы выполнялось только при отклонении. Для этого пытаемся передать переменную _WI_Result (Результат метода объекта) из контейнера задачи "Решение пользователя" в метод пользовательского БО с помощью SWC_GET_ELEMENT CONTAINER. Но система почему-то упорно не хочет присваивать этой переменной нужное значение (т.е., _WI_Result). Хотя сам _WI_Result в просмотре журнала ПО ненулевой. Может, кто подскажет в чем ошибка передачи переменной из контейнера задачи в контейнер метода "после ЭПО" пользовательского бизнес-объекта...

Сделайте перед этой задачей шаг "Условие" для _WI_Result = что-то-там, а саму задачку поместите в соответствующую условию ветку после шага.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Re:
СообщениеДобавлено: Чт, апр 16 2009, 12:01 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 08:54
Сообщения: 123
Пол: Мужской
John Doe написал:
Сделайте перед этой задачей шаг "Условие" для _WI_Result = что-то-там, а саму задачку поместите в соответствующую условию ветку после шага.


Ну тут через доп. метод же сделано. А если шаги идут один за другим, то не факт что второй выскачет автоматически, по крайней мере у меня это через раз почему-то работает, несмотря на то, что под одним обработчиком. С чем это связано не знаю....


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ввод причины отклонения.
СообщениеДобавлено: Чт, апр 16 2009, 12:46 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
Невнимательно вчитался вчера.

Добавил: Как вариант можно обработать в экзитах-программирования. Примерно такой код будет.
Code:
METHOD if_swf_ifs_workitem_exit~event_raised.

  IF im_event_name EQ  if_swf_ifs_workitem_exit~c_evttyp_after_execution.
    DATA: wi_cont TYPE REF TO if_swf_ifs_parameter_container,
          result TYPE string.
* Get task container
    wi_cont = im_workitem_context->get_wi_container( ).
    TRY.
        CALL METHOD wi_cont->get
          EXPORTING
            name  = '_WI_RESULT'
          IMPORTING
            value = result.
      CATCH cx_swf_cnt_elem_not_found .
      CATCH cx_swf_cnt_elem_type_conflict .
      CATCH cx_swf_cnt_unit_type_conflict .
      CATCH cx_swf_cnt_container .
    ENDTRY.

    CASE result.
      WHEN '0001'. " Complete
        MESSAGE 'Approved' TYPE 'I'.
      WHEN '0002'. " Canceled complete
        MESSAGE 'Rejected' TYPE 'I'.
      WHEN OTHERS.

    ENDCASE.

  ENDIF.
ENDMETHOD.

Использование Exits программирования в шагах ПО
https://www.sdn.sap.com/irj/scn/go/port ... cfe1c877c4


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Ahrefs [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB