powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ERP и учетные системы [игнор отключен] [закрыт для гостей] / Как получить dataset транзакции SAP в Delphi?
25 сообщений из 36, страница 1 из 2
Как получить dataset транзакции SAP в Delphi?
    #36032416
Idaxebrn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!

Пытаюсь получить dataset выполненной транзакции SAP R/3 в Delphi для дальнейшей обработоки. То есть я указываю имя транзакции, входные параметры и получаю набор данных. Подскажите, пожалуйста, как можно такое реализовать, учитавая, что у меня установлен SAP GUI. Спасибо!
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36032928
soulsurfer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что такое Dataset выполненной транзакции SAP R/3???
Транзакция в SAP имеет другой смысл, чем в СУБД
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36032967
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idaxebrn,
поищите в сети информацию по wdtlog.ocx, wdtfunc.ocx... типа такой . Примеры для VBA, но думаю смысл понятен будет.
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36033050
Idaxebrn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
iscrafm, спасибо, поисчу
soulsurfer, DataSet (набор данных) - структурированная информация, состояшая из набор полей определенных типов.
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36033549
САП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вы не сможете получить в таком виде результат работы SAP транзакции в таком виде.

может быть вам повезет и для вашей задачи будет RFC или BAPI-шка, что-то вроде BAPI_SALESORDER_CREATEFROMDAT2, которую вы сможете вызвать через SAP .net connector.
возможно даже что в возвращаемых таблицах найдется нужная вам информация.

но это если очень повезет
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36033573
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну и что, что получили? говорю же, вы не можете получить.
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36035544
Idaxebrn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я нашел пример, как используя ActiveX библиотеку sapa можно к нему подключиться http://www.joachim-lentz.homepage.t-online.de/bapi_e.htm
Там приводится пример с вызовом BAPI функции RFC_READ_TABLE. Может быть есть похожая BAPI функция, которая бы возвращала данных транзакции (ведь транзкция как вьюшка собирает данные по нескольким таблицам)? Что-то типа RFC_READ_TRANSACTION?
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36035660
soulsurfer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще раз (для внимательных) выдержка из курса SAP01:
"Транзакции - это прикладные программы, выполняющие бизнес-процессы в SAP-системе."

А теперь подумайте, что же все-таки вы хотите получить :)
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36035695
Idaxebrn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
soulsurfer, ну естественно я имею в виду транзакции, которые возвращают набор данных по заданным параметрам, например FBL3N
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36035748
soulsurfer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вы интересовались: куда они их возвращают?
Так что вы не туда копаете. Идете в транзакцию BAPI и ищете себе подходящий функциональный модуль для вашей задачи.
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36036220
Idaxebrn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
soulsurfer, что-то у меня есть подозрение, что sap для вас это всего три английские буквы ))
Ибо BAPI это не транзакция, да и в моем случае что BAPI что RFC один хрен. Тем более, я нашел, что есть RFC_CALL_TRANSACTION, которая может мне помочь
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36036542
САП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idaxebrn,

RFC_CALL_TRANSACTION - нет такого уже довольно давно, есть RFC_CALL_TRANSACTION_USING - для запуска пакетного ввода, передая через таблицы последовательность экранов/полей значения для ввода.

получить результат работы транзакции у вас таким образом не получится

ЗЫ не нужно переносить идиомы одной среды в другую. в САП транзакция -- как правило что-то делает (создает заказ, потребность, и т.п.). транзакция, которая только показывает (насколько я понял, вы именно такие хотите запускать, va0 3 , xd0 3 , mm0 3 , etc) -- просто readonly версия транзакции на изменение, причем можно переключаться на лету смотреть/менять
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36036967
Idaxebrn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может быть, вы сможете посоветовать, как лучше получить данные в моем случае. Кстати, замечу, что в закладке "статус" транзакций va03, xd03, mm03 указано, что это "программа", а fbl1n - "отчет". Возможно, есть отдельный способ получения именно отчетов через ActiveX?
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36037174
САП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idaxebrn,

если вас интересуют проводкИ по главной книге/дебиторов/кредиторов, то посмотрите на FAGL_GET_что_нибудь (например, FAGL_GET_ALL_LEDGERS). более подробно не скажу, не имел дело. но надо учесть:

1. это не RFC, их нельзя вызвать извне. придется написать RFC обертку
2. нет прямого соответствия вывода fblxx и вывода этих функциональных модулей
3. вы должны сами знать, в какой таблице что лежит, как это взаимосвязано и как это интерпретировать
4. вывод очень низкоуровневый, на уровне прямых запросов в базу, никаких бизнес объектов вы не получите
5. на всякий случай уточните что у вас, FAGL или FMGL - это определяет, какие именно таблицы вам придется запрашивать
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36037225
САП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>есть отдельный способ получения именно отчетов через ActiveX?
ответ на такой вопрос мне не известен. но думаю, что никак нельзя получить выход произвольного отчета в программном виде как набор связанных таблиц
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36037315
Idaxebrn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поковырялся и нашел, что есть RFC_READ_REPORT, а имя отчета можно посмотреть в статусе в сапе (например, для FBL1N - SAPLKKBL). Правда пока у меня не удается подключиться к сапу в delphi через activex, но я надеюсь победа близка
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36037397
soulsurfer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IdaxebrnПоковырялся и нашел, что есть RFC_READ_REPORT, а имя отчета можно посмотреть в статусе в сапе (например, для FBL1N - SAPLKKBL). Правда пока у меня не удается подключиться к сапу в delphi через activex, но я надеюсь победа близка
И как? Пробовали запускать этот ФМ? Исходный текст его смотрели? :)
Вы хорошо поднимаете настроение с утра :) Ждем новых постов из жизни изобретателей велосипедов.
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36037452
САП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FUNCTION RFC_READ_REPORT.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(PROGRAM) LIKE SY-REPID
*" EXPORTING
*" VALUE(SYSTEM) LIKE SY-SYSID
*" VALUE(TRDIR) LIKE TRDIR STRUCTURE TRDIR
*" TABLES
*" QTAB STRUCTURE D022S
*"----------------------------------------------------------------------
* REFRESH QTAB.
* READ REPORT PROGRAM INTO QTAB.
* SELECT SINGLE * FROM TRDIR WHERE NAME = PROGRAM.
* SYSTEM = SY-SYSID.
ENDFUNCTION.

он ничего не делает, все тело модуля закомментировано.
а если бы и нет, то вы бы получили текст программы, а не результат работы
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36037718
Idaxebrn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
значит не то... ну есть же полюбому какая-то RFC или другой способ, чтобы получить из вне данные ABAP отчета. Вот типа компонента Xtract для SQL Server Integration Sercive http://theobald-software.com/wiki/Xtract_IS_Report_Postprocessing_in_SSIS. Там ведь каким-то образом реализован механизм запуска ABAP отчет по имени с указанием параметров.
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36037779
САП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idaxebrn,

скорее всего эти ребятишки имеют доступ к низкоуровневым подробностям работы SAP GUI. я с такой документацией не встречался
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36037811
СергейТТТ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idaxebrn,

даже если такого ФМ нет (что не очень верится), он легко пишется - код в пару строк submit <repname> с параметрами..
только надо не забыть сделать этот ФМ релевантным для RFC-вызовов
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36037822
Idaxebrn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну как-то не логично, не находи, что есть возможность читать таблицы, и нельзя читать отчеты. имхо ничо особенного и неизвестного простым смертным в этом компоненте нет. значит есть подходяший rfc/bapi, надо просто искать....
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36037859
САП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idaxebrn,

не ищите в САПе логики. там только деньги, выгодно/не выгодно.

а по вашей задаче могу сказать, что способ конечно есть, SAP GUI ведь как-то запускает отчеты и показывает их на экране. но описание API, позволяющего это делать, я в свободном доступе не видел. попробуйте пошукать на тему SAP GUI scripting
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36037868
СергейТТТ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idaxebrn,

BAPI сразу не нашел,
поиском по se37 нашлось

самый простой - RZL_SUBMIT
посложнее - SUBMIT_REPORT

них можно взять за основу (не вижу в них возврата списка вывода)
а лучше задайте вопрос на sap forum-e, там могут более точно ответить
...
Рейтинг: 0 / 0
Как получить dataset транзакции SAP в Delphi?
    #36037871
САП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
про выгодно/невыгодно: компонент Xtract IS Report, на который вы сослались, входит только в состав Ultimate License, которая стоит всего навсего 7900 евро не включая НДС
...
Рейтинг: 0 / 0
25 сообщений из 36, страница 1 из 2
Форумы / ERP и учетные системы [игнор отключен] [закрыт для гостей] / Как получить dataset транзакции SAP в Delphi?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]