Текущее время: Сб, июл 19 2025, 01:19

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


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 13 ] 
Автор Сообщение
 Заголовок сообщения: call transaction 'CO1F'
СообщениеДобавлено: Пн, сен 09 2013, 08:02 
Ассистент
Ассистент

Зарегистрирован:
Ср, июн 26 2013, 13:45
Сообщения: 46
Добрый день.

Возник вот такой вопрос. Есть транзакция CO1F, я из ALV GRID двойным щелчком по полю грида вызываю транзакцию CO1F. Так вот в этой транзакции есть кнопка "Фактические данные". Вопрос как программно реализовать нажатие на эту кнопку "Фактические данные" и чтобы информация из поля расположенного вверху ALV GRID (моей программы) попала в поле "Рабочее место" на закладке "Персонал/Дополнительные данные" в транзакции CO1F

perform append_bdc_dyn using 'SAPLCORU' '0700'.
perform append_bdc_value using 'CORUF-AUFNR' wa_sum-aufnr.
perform append_bdc_value using 'CORUF-VORNR' wa_sum-vornr.
perform append_bdc_value using 'BDC_OKCODE' '/00'.
perform append_bdc_dyn using 'SAPLCORU' '0750'.
perform append_bdc_value using 'CORUF-LMENG' RABMESTO.
perform append_bdc_value using 'BDC_OKCODE' '/00'.

call transaction 'CO1F' using it_bdc[] options from opt.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: call transaction 'CO1F'
СообщениеДобавлено: Пн, сен 09 2013, 09:07 
Специалист
Специалист

Зарегистрирован:
Чт, дек 16 2010, 15:23
Сообщения: 133
Откуда: Набережные Челны
Пол: Мужской
А записать последовательность действий в CO1F через SHDB и посмотреть запись транзакции не пробовали?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: call transaction 'CO1F'
СообщениеДобавлено: Чт, сен 12 2013, 13:55 
Ассистент
Ассистент

Зарегистрирован:
Ср, июн 26 2013, 13:45
Сообщения: 46
Есть программа, из нее вызываю транзакцию CO12 в которую передаю параметр "Заказ". Запустил тр SHDB сгенерировал код выполнения. Когда я ввожу номер заказа в поле "Заказ" далее нажимаю Enter и выделяю строку, так вот. Только вот в этом коде нет нажатия на кнопку Enter и выделения строки грида как на стриншоте. Подскажите пожалуйста как запрограммировать нажатие на Enter и выделение строки.

perform append_bdc_dyn using 'SAPLCORU' '0300'.
perform append_bdc_value using 'BDC_OKCODE' '/00'.
perform append_bdc_value using 'BDC_SUBSCR' 'SAPLCORU'.
perform append_bdc_value using 'BDC_SUBSCR' 'SAPLCORU'.
perform append_bdc_value using 'BDC_CURSOR' 'AFRD-AUFNR(01)'.
perform append_bdc_value using 'AFRD-AUFNR(01)' wa_sum-aufnr.
perform append_bdc_value using 'BDC_CURSOR' 'AFRUD-VORNR(01)'.
perform append_bdc_value using 'AFRUD-VORNR(01)' wa_sum-vornr.

perform append_bdc_dyn using 'SAPLCORU' '0300'.
perform append_bdc_value using 'BDC_OKCODE' '/00'.
perform append_bdc_value using 'BDC_OKCODE' '=VODA'.
perform append_bdc_value using 'BDC_SUBSCR' 'SAPLCORU'.
perform append_bdc_value using 'BDC_SUBSCR' 'SAPLCORU'.
perform append_bdc_value using 'BDC_CURSOR' 'AFRUD-AUFNR(02)'.

perform append_bdc_dyn using 'SAPLCORU' '0301'.
perform append_bdc_value using 'BDC_OKCODE' '=ENTR'.
perform append_bdc_value using 'BDC_CURSOR' 'TCORU-VSSLE'.
perform append_bdc_value using 'TCORU-VSSLE' 'X'.

perform append_bdc_dyn using 'SAPLCORU' '0300'.
perform append_bdc_value using 'BDC_OKCODE' '=VODA'.
perform append_bdc_value using 'BDC_SUBSCR' 'SAPLCORU'.
perform append_bdc_value using 'BDC_SUBSCR' 'SAPLCORU'.
perform append_bdc_value using 'BDC_CURSOR' 'CORUF-GM_ICON(01)'.
perform append_bdc_value using 'AFRU_COL-SELKZ(01)' 'X'.

perform append_bdc_dyn using 'SAPLCORU' '0301'.
perform append_bdc_value using 'BDC_OKCODE' '=ENTR'.
perform append_bdc_value using 'BDC_CURSOR' 'TCORU-VSSLE'.
perform append_bdc_value using 'TCORU-VSSLE' 'X'.


Последний раз редактировалось Knedlik Пт, сен 13 2013, 09:05, всего редактировалось 2 раз(а).

Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: call transaction 'CO1F'
СообщениеДобавлено: Чт, сен 12 2013, 14:20 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, авг 28 2006, 11:24
Сообщения: 292
Пол: Мужской
выделение строки.
Code:
perform append_bdc_value using 'AFRU_COL-SELKZ(01)' 'X'.

нажатие на Enter
Одно из двух:
Code:
perform append_bdc_value using 'BDC_OKCODE' '/00'.
perform append_bdc_value using 'BDC_OKCODE' '=ENTR'.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: call transaction 'CO1F'
СообщениеДобавлено: Чт, сен 12 2013, 14:29 
Ассистент
Ассистент

Зарегистрирован:
Ср, июн 26 2013, 13:45
Сообщения: 46
Rokhay написал:
выделение строки.
Code:
perform append_bdc_value using 'AFRU_COL-SELKZ(01)' 'X'.

нажатие на Enter
Одно из двух:
Code:
perform append_bdc_value using 'BDC_OKCODE' '/00'.
perform append_bdc_value using 'BDC_OKCODE' '=ENTR'.



Выделение строки не срабатывает как и Enter ((

Срабатывает если передавать только один парметр или Заказ или Операцию, а как сделать так чтобы срабатывало на два параметра?

perform append_bdc_value using 'AFRD-AUFNR(01)' wa_sum-aufnr.
perform append_bdc_value using 'AFRUD-VORNR(01)' wa_sum-vornr.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: call transaction 'CO1F'
СообщениеДобавлено: Чт, сен 12 2013, 19:19 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, авг 28 2006, 11:24
Сообщения: 292
Пол: Мужской
Я потерял нить: что же именно не получается.
Уточните:
1) Что должно получиться
2) Покажите соответствующий кусок кода.
3) Что получается в результате.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: call transaction 'CO1F'
СообщениеДобавлено: Пт, сен 13 2013, 08:17 
Ассистент
Ассистент

Зарегистрирован:
Ср, июн 26 2013, 13:45
Сообщения: 46
Rokhay написал:
Я потерял нить: что же именно не получается.
Уточните:
1) Что должно получиться
2) Покажите соответствующий кусок кода.
3) Что получается в результате.



1) В транзакцию CO12 надо передать 4 переменных: Заказ (p_aufnr), Операция (wa_sum-vornr), Рабочее место (RABMESTO), Дата проводки (RABDATA). Выделить строку с сказом и нажать на кнопку "Фактические данные", где проставляю галку в поле "Работа/Услуги" и жму ОК. Далее сохраняю.
2)
perform append_bdc_dyn using 'SAPLCORU' '0300'.
perform append_bdc_value using 'AFRUD-VORNR(01)' wa_sum-vornr.
perform append_bdc_value using 'AFRD-AUFNR(01)' p_aufnr.
perform append_bdc_value using 'AFRUD-BUDAT(01)' RABDATA.
perform append_bdc_value using 'AFRUD-ARBPL(01)' RABMESTO.
perform append_bdc_value using 'AFRU_COL-SELKZ(01)' 'X'.
perform append_bdc_dyn using 'SAPLCORU' '0300'.

perform append_bdc_dyn using 'SAPLCORU' '0301'.
perform append_bdc_value using 'BDC_OKCODE' '=ENTR'.
perform append_bdc_value using 'BDC_CURSOR' 'TCORU-VSSLE'.
perform append_bdc_value using 'TCORU-VSSLE' 'X'.
perform append_bdc_value using 'BDC_OKCODE' '/00'.

call transaction 'CO12' using it_bdc[] options from opt.

3) Если все задать то получается что все переменные проставляются, а вот заказ не проставляется в поле "Заказ"


Последний раз редактировалось Knedlik Пт, сен 13 2013, 09:04, всего редактировалось 2 раз(а).

Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: call transaction 'CO1F'
СообщениеДобавлено: Пт, сен 13 2013, 08:21 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, авг 28 2006, 11:24
Сообщения: 292
Пол: Мужской
Цитата:
perform append_bdc_value using 'AFRD-AUFNR(01)' p_aufnr.

Вы не в то поле проставляете заказ. В этой таблице структура AFRUD, а не AFRD.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: call transaction 'CO1F'
СообщениеДобавлено: Пт, сен 13 2013, 08:37 
Ассистент
Ассистент

Зарегистрирован:
Ср, июн 26 2013, 13:45
Сообщения: 46
Rokhay Спасибо за помощь, все получилось ))))


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: call transaction 'CO1F'
СообщениеДобавлено: Чт, сен 26 2013, 14:15 
Ассистент
Ассистент

Зарегистрирован:
Ср, июн 26 2013, 13:45
Сообщения: 46
Вот такой вопрос.

В траназкции MB51 есть поле "Вид движения", если я хочу просто поле заполнить (пакетным вводом) одним параметром то пишу вот так

SET PARAMETER ID 'ANR' FIELD str2-aufnr.

А вот если мне надо в поле "Вид движения" передать массив данных (т.е. два значения 101 и 102). Как это сделать?

CLASS cl_my2 IMPLEMENTATION.
METHOD mymeth2.
READ TABLE it_pipi_new INDEX e_row-index INTO str2.
IF ( e_column-fieldname = 'AUFNR' AND str2-aufnr <> '' ).
SET PARAMETER ID 'ANR' FIELD str2-aufnr.
CALL TRANSACTION 'CO02' AND SKIP FIRST SCREEN.
ELSEIF ( e_column-fieldname = 'BISMT' AND str2-bismt <> '' ).
SET PARAMETER ID 'MAT' FIELD str2-plnbez.
SET PARAMETER ID 'WRK' FIELD '1000'.
SET PARAMETER ID 'BWA' FIELD '*'.
CALL TRANSACTION 'MB51' AND SKIP FIRST SCREEN.
ENDIF.
ENDMETHOD.
METHOD handle_before_user_command.
ENDMETHOD.
ENDCLASS.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: call transaction 'CO1F'
СообщениеДобавлено: Пт, сен 27 2013, 16:25 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, авг 28 2006, 11:24
Сообщения: 292
Пол: Мужской
Цитата:
А вот если мне надо в поле "Вид движения" передать массив данных (т.е. два значения 101 и 102). Как это сделать?

Можно запустить отчет через submit и передать туда все критерии выбора в нужном объеме.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: call transaction 'CO1F'
СообщениеДобавлено: Вт, окт 01 2013, 06:56 
Ассистент
Ассистент

Зарегистрирован:
Ср, июн 26 2013, 13:45
Сообщения: 46
А как это можно реализовать через submit?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: call transaction 'CO1F'
СообщениеДобавлено: Вт, окт 01 2013, 07:27 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Ср, июн 13 2007, 16:36
Сообщения: 585
Откуда: Belarus
Пол: Мужской
Как-нибудь так:
Code:

submit RM07DOCS
with MATNR-LOW = str2-plnbez
with WERKS-LOW = '1000'
with BWART BETWEEN '101' AND '102'
and return.


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 13 ] 

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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