Текущее время: Пт, апр 19 2024, 15:41

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Написание BDC, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, фев 26 2010, 12:04 
Специалист
Специалист

Зарегистрирован:
Вт, фев 22 2005, 11:36
Сообщения: 244
Добрый день всем, помогите плз решить проблемку.

Нужно изменить записи условий цены в отдельных позициях SD фактур (фактур несколько сотен, хочу автоматизировать это дело с помощью BDS). Позиций может быть 100 и более, т.е. на экране они не помещаются все, нужна прокрутка.
Пишу пакетник, куда на вход подается № фактуры и № позиции. В транзакции SHDB, записала последовательность действий.
Не могу понять 2 вещи:
1) Где в записанной системой последовательности действий номер позиции?
2) При прогоне только что записанной последовательности, например, с № позиции 500, система не понимает, что нужна прокрутка и говорит, что данное поле на экране SAPMV60A 104 не найдено.

Отрывок SHDB.

1 T VF02 BS AA X F
2 SAPMV60A 0101 X

3 BDC_CURSOR VBRK-VBELN
4 BDC_OKCODE /00
5 VBRK-VBELN 900601461 (номер фактуры)

6 SAPMV60A 0104 X
7 BDC_CURSOR VBRK-FKART
8 BDC_OKCODE /00
9 SAPMV60A 0104 X

10 BDC_CURSOR VBRP-POSNR(02)
11 BDC_OKCODE =PFKO
12 RV60A-SELKZ(16) X (тут должна быть позиция)

и далее...

Как это предолеть?

Заранее большое спасибо!


Последний раз редактировалось Nowelle Сб, фев 27 2010, 17:15, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написание BDS, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, фев 26 2010, 12:25 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, июн 10 2005, 14:14
Сообщения: 216
Откуда: Україна -> Москва
С прокруткой в пакетнике все плохо, сохраняются данные только первого экрана. Выход - найти бапишку. Ну или запускать пакетник в цикле, в котором будет заполнятся только первый экран(без прокрутки).


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написание BDS, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, фев 26 2010, 12:33 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Nowelle посмотрите BAPI_INCOMINGINVOICE*


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написание BDS, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, фев 26 2010, 12:37 
Специалист
Специалист

Зарегистрирован:
Вт, фев 22 2005, 11:36
Сообщения: 244
INCOMINGINVOICE не подойдет, у меня сбытовые фактуры.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написание BDS, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, фев 26 2010, 14:34 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 02 2009, 22:28
Сообщения: 228
Откуда: MOW
Пол: Мужской
Надо найти команду, с помощью которой можно сделать прокрутку "на экран" вниз (page down). После вызова этой команды все строки сдвинутся и RV60A-SELKZ(1) X будет уже не 1-я строка в абсолюте, а 1-я на экране (если рассказал что и так понятно извиняюсь, конкретно для vf02 пакетника не писал и команду не назову).
Иногда получается написать такой пакетник, иногда нет.
А лучше поискать BAPI, мне кажется оно должно существовать.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Написание BDS, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, фев 26 2010, 14:51 
Специалист
Специалист

Зарегистрирован:
Вт, фев 22 2005, 11:36
Сообщения: 244
raaleksandr, спасибо за подсказку! :)
Не заметила сразу, что при записи BDS наверху есть кнопки First Page, Prev Page, Next Page, Last page.
Команда "пролистывания" table control выглядит так:
BDC_OKCODE =P+
При этом можно рассчитать и новый номер позиции.
Вопрос решен. :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написание BDS, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, фев 26 2010, 14:51 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Nowelle написал(а):
INCOMINGINVOICE не подойдет, у меня сбытовые фактуры.

Ошибся, это по моему для счетов фактур.
Посмотрите BAPI_BILLINGDOC*.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написание BDS, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, фев 26 2010, 14:58 
Специалист
Специалист

Зарегистрирован:
Вт, фев 22 2005, 11:36
Сообщения: 244
BAPI_BILLINGDOC_EDIT позволяет менять только в диалоге, ручками. Непонятно, для чего SAP ее вообще сделал, когда есть VF02. :?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написание BDS, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, фев 26 2010, 15:30 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 17:37
Сообщения: 1962
Откуда: Москва
Пол: Мужской
Нверно все же BDC, а не BDS!

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написание BDC, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, июл 25 2014, 09:17 
Начинающий
Начинающий

Зарегистрирован:
Вт, авг 10 2010, 07:39
Сообщения: 6
Всем доброго времени суток.

Поднимаю тему, чтобы не плодить новых.

При создании пакетника столкнулся с продлемой прокрутки условий цены позиции при обработке SD фактуры (VF02).
BDC_OKCODE =P+ не работает для VF02 и при записи BDC кнопок First Page, Prev Page, Next Page, Last page на экране нет.

Гуру, как же все таки победить прокрутку?

Спасибо.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Написание BDC, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, июл 25 2014, 10:51 
Начинающий
Начинающий

Зарегистрирован:
Пн, сен 03 2012, 11:12
Сообщения: 22
Пол: Мужской
Конкретно в этом случае используйте перед запуском пакетника:
Code:
SET PARAMETER ID 'VFP' FIELD ld_posnr. "ld_posnr - номер позиции

при открытии документа, данная позиция будет первой, к ней можно будет обратиться как к RV60A-SELKZ(01)

разобрать что к чему и как можно в инклуде MV60AF0X_XVBRP_TCTRL_SCROLLEN


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написание BDC, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, июл 25 2014, 11:03 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3074
Откуда: Москва
Вот что говорится в логике экрана обработки условий
Code:
* Function SCROLLING_IN_TABLE returns zero for current line if no
* no known OK_CODE has been passed in (e.g. P--, P-, P+, P++, ' ')

Но этот код не работает... :cry:
А вообще хотелось бы услышать, зачем в уже созданной фактуре нужно править условия? :?

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Написание BDC, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, июл 25 2014, 12:26 
Начинающий
Начинающий

Зарегистрирован:
Вт, авг 10 2010, 07:39
Сообщения: 6
Не работает (
При создании факуры суммы некоторых условий могут быть неизвестны, но документы при этом создаются. Вот потом то и нужно подправить пакетником все пропуски в этих документах.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Написание BDC, когда требуется прокрутка экрана
СообщениеДобавлено: Вс, июл 27 2014, 18:09 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Чт, авг 22 2013, 01:09
Сообщения: 108
Откуда: г. Жлобин, Республика Беларусь
Пол: Мужской
При написании пакетников писать прокрутку через стандартный функционал не очень хорошая идея. Так как прокрутка зависит от разрешения монитора и заранее не знаешь сколько строк будет на мониторе у пользователя. Тут два варианта - либо зафиксировать размер экрана независимо от монитора (через установку специальных параметров в call transaction ... using ... ), либо найти вариант позиционирования на нужной строке в списке через указания номера позиции в списке. Второй вариант более предпочтительнее, но правда не всегда возможен. :-(

_________________
Когда другие слепо следуют за истиной, помни - ничто не истина.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Написание BDC, когда требуется прокрутка экрана
СообщениеДобавлено: Пт, мар 19 2021, 17:10 
Начинающий
Начинающий

Зарегистрирован:
Вс, янв 11 2009, 20:39
Сообщения: 6
Пол: Мужской
тоже возникла необходимость корректировки схемы калькуляции в созданных фактурах
по схеме с ППС на станции назначения:
отгрузка и фактура НДС
далее, перевалки, потери при транспортировке и фактура по выручке
когда фактура по выручке уже проведена - требуется скорректировать НДС на потери.

через BAPI BAPI_BILLINGDOC_CREATEMULTIPLE создаю КСФ: фактура на фактуру к первичной фактуре НДС
в этом бапи, к сожалению, можно забить только цену, но не стоимость.
далее считаю: стоимость НДС исходной фактуры - стоимость только что созданной КСФ - стоимость фактуры по выручке
из за погрешностей при округлениях возникает 1 копейка отклонений, которую нужно исправить только что в созданной КСФ

пытался сделать через рекомендацию
https://answers.sap.com/questions/11208 ... tions.html
в RV_INVOICE_DOCUMENT_UPDATE ввожу скорректированную стоимость на копейку в xkomv-kwert, xkomv-ksteu ставлю 'E', xkomv-kmprs = 'X'. Обновление цен делаю pricing_type = 'С' на выходе этого ФМ
но на выходе ничего не происходит. условие остаётся автоматическим, копейка не скорректирована

только через пакетник такую ситуацию можно отработать с запуском VF02 на каждую отдельную позицию, как порекомендовал коллега e.savitskij, чтобы не разбирать экраны пейдж-даунами, или существуют всё-таки другие решения по корректировке схемы калькуляции в фактуре?

вариант с забрасыванием через BAPI_BILLINGDOC_CREATEMULTIPLE в отдельный вид условия этой копейки, как фиксированную стоимость, выглядит не очень красиво.


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

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


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

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


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

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