Shurup's blog
Как я создавал Обработку к/с ООО УАТ

Shurup's blog

Начало

Mon Jul 21, 2008 9:28 am



Решил было запостить на Форум, но все заняты своими делами. Тем более мой опыт программирования в ABAP не позволяет ПОКА задавать мне более корректные вопросы,
вот ссылка
http://www.sapnet.ru/viewtopic.php?t=2394
Вобщем решил делать так!
1) Обрабатывать ПОКА только Исходящие документы. Во-первых их больше.
2) Сделал 3 таблицы:
1-ая Таблица Заголовков Выписки Клиент-Банк (далее К-Б)
2-ая Таблица самих Записей Выписки К-Б
3-ая Таблица Настроек. Она содержит параметры которые я записал у бухгалтера, когда она лепит документы (транзакции)


The Trackback URL for this entry is:

http://www.sapnet.ru/trackback.php?e=26

   

Author Message
Shurup
Участник

Joined: 10 Apr 2008
Posts: 5
Location: Глазов
View Blog

PostPosted: Mon Jul 21, 2008 9:43 am    Post subject:    

Сделал BDC Тр.F-02. Самый простой вид Исходящих документов - Перечисление зарплаты. У нас за это отвечает прямая проводка в Гл.Книге. Как у остальных, интересно?
Из новшеств на седняшний день научился использовать
1) вызов метода call method cl_gui_frontend_services=>gui_upload
2) динамический вызов нужной транзакции perform (locl_Z1CCBEX_EQ_TAB-DynPro_call) in program z1835_sb_cl.
3) приделал обработку try / catch
4) научился сохранять номер документа
* Надо взять номер документа, который будет создан в R/3
clear n_b_doc.
CALL TRANSACTION 'F-02' USING BDCDATA MODE 'E'.
if sy-subrc eq 0.
GET PARAMETER ID 'BLN' FIELD n_b_doc.
write: / 'СООБЩЕНИЕ П/пр F-02. BDC транз. F-02 выполнен! Документ из Выписки Номер',
locl_Z1CCBEX_BROWSE-VBLNR,
'обработан. Создан FI документ R/3',
n_b_doc.
Back to top View user's profile Send private message ICQ Number
Shurup
Участник

Joined: 10 Apr 2008
Posts: 5
Location: Глазов
View Blog

PostPosted: Mon Jul 21, 2008 10:03 am    Post subject:    

Иду дальше.
Берем Исходящие Документы типа - За расчетные услуги банку, Комиссии за обналичивание чеков и др. комиссии банку.
BDC для них МОЖНО содать, несмотря на то, что в начале я писал что обработать Открытие позиции типа очччсложно. Для этого добавил поле в Настроечную таблицу поле LIFNR элемент данных LIFNR. Т.е. буду хранить документ, созданный в транзакции F-43, а потом искать его в Открытых позициях Тр.F-53.
A! Забыл сказать, что этот тип документов у нас отрабатывается вот этими 2-мя транзакциями Very Happy
Back to top View user's profile Send private message ICQ Number
Shurup
Участник

Joined: 10 Apr 2008
Posts: 5
Location: Глазов
View Blog

PostPosted: Mon Jul 21, 2008 12:26 pm    Post subject:    

Quote:
а потом искать его в Открытых позициях Тр.F-53.

Не надо искать, надо передавать как праметр п п/прогр. BDC F-53
Back to top View user's profile Send private message ICQ Number
Shurup
Участник

Joined: 10 Apr 2008
Posts: 5
Location: Глазов
View Blog

PostPosted: Wed Jul 23, 2008 7:10 am    Post subject:    

Вчера возникла проблема, которую я пока не знаю как решить. А проблема такая. Из программы динамически вызывается п/программа, назовем ее F-43. Она изменяет глобальнубю переменную data n_b_doc like bseg-BELNR. Номер созданного документа, который является документом Открытой Позиции.
Далее из F-43 динамически вызывается п/программа F-53, для которой тоже использует переменную n_b_doc. для поиска. Т.е. F-53 это BDC и внем есть вызов Поиска документа по № док.
Так вот проблема, BDC безсистемно (каждый раз по разному) останавливается на шаге ввода Номера документа для поиска!!! Как будтоб в переменной n_b_doc значение Space!
Трассировка в debugger доказывает, что не для всех итераций F-53 переменная n_b_doc имеет значение! ПОЧЕМУ!!!???????
Мысли в слух. 1) Может п/программа F-53 не сразу видит те документы, которые были созданы в F-43.
Решение для 1) Пробуем заврешить F-43 полностью, и
потом только вызвать F-53.\
2) Криво записан BDC для поиска в F-53
Решение для 2) Еще раз перезаписать BDC Транз. F-53
Back to top View user's profile Send private message ICQ Number
Shurup
Участник

Joined: 10 Apr 2008
Posts: 5
Location: Глазов
View Blog

PostPosted: Wed Jul 23, 2008 9:08 am    Post subject:    

Такое впечателеие, что когда п/пр. F-43 создает в Тр.F-43 документы, не все они успеваю попасть в табл. Открытые позиции.
Может сначала прокурутить тр.F-43 по всем документам, а потом F-53?
Back to top View user's profile Send private message ICQ Number
Display posts from previous:   

Russian ABAP Developer's Club Forum Index -> Blogs -> Shurup's blog -> Начало