Cílem komponenty je zajistit napojení na SAPGUI (klientské rozhraní) a umožnit z IS Golem doplnit položky do určitého formuláře, resp. provést uživatelsky definované akce.

Basic idea

Golem -> Tahiti -> SAPGUI

Golem will send data to the Tahiti together with information about form for data filling.

Tahiti have to:

Napojeni Tahiti<->SAP

Přímé ovládání SAP klienta je netriviální (způsobů organizace formulářů, resp. požadovaných akcí je mnoho druhů). Jako řešení se jeví možnost použití speciálního makra pro každé jednotlivé propojení (datový přenos). SAP klient přímo obsahuje podporu pro záznam činností uživatele - ty jsou uloženy jako makro. Při využití tohoto mechanismu napojení znamená:

Datový formát propojení (Golem<->Tahiti)

Data do Tahiti jsou přenášena formou ActionObject, tento mechanizmus je již dnes využíván pro přenos dat pro zobrazování URL, Damis.

ActionObject Tahiti.SAPLink.Transaction

type

Tahiti.SAPLink.Transaction

význam

Objekt umožňuje přenesení dat do SAP klienta

Attributy:

Id

Identifikátor objektu (nepovinný atribut)

Data

XML soubor s daty a požadavky na přenos

Script

skript popisující přenos

ActionObject Tahiti.SAPLink.Error

type

Tahiti.SAPLink.Error

význam

Objekt umožňuje přenesení informace o chybě SAP klienta

Attributy:

Id

Identifikátor objektu (nepovinný atribut)

Description

Popis chyby

ActionObject Tahiti.SAPLink.Cancel

type

Tahiti.SAPLink.Cancel

význam

Objekt umožňuje přenesení informace o storno - uživatelem

Attributy:

Id

Identifikátor objektu (nepovinný atribut)

ActionObject Tahiti.SAPLink.Success

type

Tahiti.SAPLink.Success

význam

Objekt umožňuje přenesení informace o úspěšném zpracování objektu

Attributy:

Id

Identifikátor objektu (nepovinný atribut)

Další atributy jsou závislé na definici pole Results.

Formát dat (atribut Data)

Položka

Povinnost

Vysvětlení

Requirements

A

Požadavky na klienta pro připojení

ConnectionString

N

Řetězec popisující připojení k serveru, může být použit pro aktivaci klienta pokud neběží

System

A

Identifikace systému ke kterému je požadováno připojení

SystemNumber

N

Číslo systému

Client

N

Identifikace přihlášeného klienta

UI

N

Způsob připojení k UI, obsahuje 0..n UseTransaction

UseTransaction

N

Transakce jez je mozno znovu pouzit, * - libovolná transakce

Transaction

A

Jméno transakce, kam mají být data doplněna

OnError

N

Definuje, zda při chybě má být odeslána notifikace na server - 0|1

OnCancel

N

Definuje, zda při stornování uživatelem má být odeslána notifikace na server - 0|1

OnSuccess

N

Definuje, zda při úspěšném zpracování bude odeslána notifikace na server - 0|1

Variables

N

Hodnoty, které mají být přeneseny do SAP

Variable

N

Kombinace proměnná, hodnota

Results

N

Výsledky, které mají být přeneseny zpět na server

Result

N

Id položky ve formuláři a název pod kterým má být hodnota přenesena

<?xml version="1.0"?>
<TahitiSapLink>
  <Requirements>
    <ConnectionString>CONNECTION_STRING</ConnectionString>
    <System>ID3</System>
    <Client>210</Client>
    <UI>
      <UseTransaction name="TRANSACTION_NAME/*"/>
    </UI>
    <OnSuccess>0</OnSuccess>
    <OnCancel>0</OnCancel>
    <OnError>0</OnError>
  </Requirements>
  <Transaction name="TRANSACTION_NAME">
    <Variables>
      <Variable name="" value=""/>
    </Variables>
  </Transaction>
</TahitiSapLink>

Ukázka (data pro napojení BP)

<?xml version="1.0"?>
<TahitiSapLink>
  <Requirements>
    <ConnectionString>/H/sms-ph.ph.koop.cz/H/192.168.101.148/H/sap-iaq.corpnet.at/S/3284</ConnectionString>
    <System>IAQ</System>
    <UI>
      <UseTransaction name="SESSION_MANAGER"/>
    </UI>
    <OnSuccess>1</OnSuccess>
    <OnCancel>1</OnCancel>
    <OnError>1</OnError>
  </Requirements>
  <Transaction name="BP">
    <Variables>
      <Variable name="id" value="89473"/>
    </Variables>
    <Results>
      <Result id="wnd[0]/usr/txt/WSV/BP_GOLE_DIALOG-BPEXT" name="sap-id"/>
    </Results>    
  </Transaction>
</TahitiSapLink>

Příklady

TahitiSapLink (last edited 2012-02-13 13:21:24 by 10)