Nedir?

SAP üzerindeki RFC methodlarını çağırmak için kullanılabilecek ITask'tır.

Task çalıştırılacak ve bağlantının sağlanacağı sisteme ait parametreler olarak almaktadır.

SAP üzerinden çağrılacak fonsiyonun adı kullanılmaktadır. Bağlantı için kullanılan kullanıcının SAP üzerindeki fonksiyonu çalıştırmak için yetkiye sahip olması gereklidir.

Fonksiyona input olan bilgiler InputTables içeisindeki tabloda verilmelidir. SAP üzerinde execution tamamlandıktan sonra dönen veriler OutputTables  

içerisinde Ebiflow'a gönderilmiş olmaktadır.

Sentaks
<BAPI SAPSystem="" Client="" Language="TR" User="" Password="" ApplicationServer="" Function="" TraceLevel="" CodePage="">
 <InputParameters />
 <InputTables>
    <Table Node="/*/SAP/Avans/BELAVN" Name="BELAVN" Into="" TemplatePath="">
	 <Columns>
		<Column Node="BUKRS" Name="BUKRS" />
 		<Column Node="BELTP" Name="BELTP" />
 		<Column Node="BUDAT" Name="BUDAT" />
 	</Columns>
	 <Perform />
	</Table>
 </InputTables>
 <OutputParameters />
 <OutputTables>
 <Table Name="RETBEL" Into="" TemplatePath="/*/SAP/Avans/RETBEL">
 	<Columns>
		<Column Node="BELNR" Name="BELNR" />
 		<Column Node="BUKRS" Name="BUKRS" />
 		<Column Node="GJAHR" Name="GJAHR" />
 		<Column Node="FUNCL" Name="FUNCL" />
 	</Columns>
	<Perform />
 </Table>
 <Table Name="MESSAGES" Into="/*/SAP/Avans/MESSAGES/Data" TemplatePath="/*/SAP/Avans/MESSAGES/Template">
 	<Columns>
		<Column Node="TYP" Name="TYP" />
 		<Column Node="MESSAGE" Name="MESSAGE" />
 	</Columns>
 	<Perform />
 </Table>
 </OutputTables>
</BAPI>


Özellikler


Adı
Açıklama

ApplicationServerSAP Sistemi IP veya HostName bilgisi

SAPClientSAP Client Numarası

SAPSistemSAP Sistem Numarası

Language

SAP Sistemi Localization (TR, EN gibi)


User

SAP bağlantısı için yetkili kullanıcı ID


PasswordSAP bağlantısı için yetkili kullanıcı ID şifresi

FunctionSAP Sisteminde oluşturulmuş RFC fonksiyon adı

TraceLevelHata tespiti için TraceLevel bilgisi (-1, 0 gibi)

CodePage

SAP Sistem CodePage bilgisi

1100 SAP internal, like ISO 8859-1
1103 IBM PC Multilingual 850 (00697/00850)
1127 APPLE 8 Bit ASCII
1160 Microsoft 1252, Superset of ISO 8859-1
1401 SAP internal, like ISO 8859-2
1404 Microsoft Windows 1250
1500 SAP-internal, like ISO 8859-5
1504 Microsoft Windows 1251
1610 SAP-internal, like ISO 8859-9 (Latin-5)
1614 MS Windows 1254
1700 SAP-internal, like ISO 8859-7 (Greek)
1703 IBM PC Code Page 869 Greece
1704 MS-Windows 1253
1800 SAP-internal, like ISO 8859-8 (Hebrew)

4110 UTF-8

Örnek

  1. Form Verisi (Workflow Data)

  2. BAPI ITask Özellikleri (Properties)

  3. Modül Task içerisinde Çağırma ( CallImportedFunctions)

  4. Örnek Script



SAP BAPI Task
<Script Name="">
  <Delete Node="/*/SAP/Avans/MESSAGES/Data/Template" />
  <BAPI SAPSystem="$(SAPSystem)" Client="$(SAPClient)" Language="TR" User="$(SAPUser)" Password="$(SAPPassword)" ApplicationServer="$(SAPApplicationServer)" Function="ZEF_RFC_ICxxx" TraceLevel="-1" CodePage="1610">
    <InputParameters />
    <InputTables>
      <Table Node="/*/SAP/Avans/BELAVN" Name="BELAVN" Into="" TemplatePath="">
        <Columns>
          <Column Node="BUKRS" Name="BUKRS" />
          <Column Node="BELTP" Name="BELTP" />
          <Column Node="BUDAT" Name="BUDAT" />
          <Column Node="BKTXT" Name="BKTXT" />
          <Column Node="KUNNR" Name="KUNNR" />
          <Column Node="XBLNR" Name="XBLNR" />
          <Column Node="KBHES" Name="KBHES" />
          <Column Node="HBKID" Name="HBKID" />
          <Column Node="HKTID" Name="HKTID" />
          <Column Node="WRBTR" Name="WRBTR" />
          <Column Node="KOSTL" Name="KOSTL" />
          <Column Node="WAERS" Name="WAERS" />
          <Column Node="KURSF" Name="KURSF" />
          <Column Node="SGTXT" Name="SGTXT" />
        </Columns>
        <Perform />
      </Table>
    </InputTables>
    <OutputParameters />
    <OutputTables>
      <Table Name="RETBEL" Into="" TemplatePath="/*/SAP/Avans/RETBEL">
        <Columns>
          <Column Node="BELNR" Name="BELNR" />
          <Column Node="BUKRS" Name="BUKRS" />
          <Column Node="GJAHR" Name="GJAHR" />
          <Column Node="FUNCL" Name="FUNCL" />
        </Columns>
        <Perform />
      </Table>
      <Table Name="MESSAGES" Into="/*/SAP/Avans/MESSAGES/Data" TemplatePath="/*/SAP/Avans/MESSAGES/Template">
        <Columns>
          <Column Node="TYP" Name="TYP" />
          <Column Node="MESSAGE" Name="MESSAGE" />
        </Columns>
        <Perform />
      </Table>
    </OutputTables>
  </BAPI>
  <If>
    <Then>
      <Condition>
        <Or>
          <Greater Equal="False">
            <Count><![CDATA[/*/SAP/Avans/MESSAGES/Data/Template[TYP='E']]]></Count>
            <Value Culture="" Target="Integer">0</Value>
          </Greater>
          <Equals>
            <Count><![CDATA[/*/SAP/Avans/MESSAGES/Data/Template]]></Count>
            <Value Culture="" Target="Integer">0</Value>
          </Equals>
        </Or>
      </Condition>
      <Perform>
        <ThrowException>
          <Value Culture="" Target="None">Avans SAP kaydı yapılırken hata oluştu</Value>
        </ThrowException>
      </Perform>
    </Then>
  </If>
</Script>
  • No labels

1 Comment

  1. Doğrudan SAP RFC fonksiyonuna bağlanabilmesi entegrasyonları kolaylaştırır.