Freigeben über


So codieren Sie eine Transaktionsintegratoranwendung

Nachdem Sie eine Transaction Integrator (TI)-Komponente bereitgestellt haben, können Sie Code für diese Komponente schreiben. Nachdem Sie den Code geschrieben haben, können Sie den Code testen und ggf. die Schnittstelle an die TI-Komponente ändern.

So codieren Sie eine TI-Anwendung

  1. Erstellen Sie eine Instanz des TI-Objekts.

    Das TI-Objekt enthält die Schnittstellen, für die Sie Code schreiben. Wenn Ihre Anwendung eine Schnittstelle für das TI-Objekt aufruft, übergibt TI Manager die Informationen an Ihren Remoteserver.

  2. Richten Sie Ihre Datenvariablen ein.

    Wie bei vielen Anwendungen, die den Host Integration Server verwenden, ist es wichtig, dass Sie einen Datentyp verwenden, der erfolgreich zu und von Ihrem Remoteserver übersetzt werden kann. Weitere Informationen zu Datentypen und deren Zuordnung zwischen Systemen finden Sie unter Datentypenund Host- und Automatisierungsdaten.

  3. Führen Sie Aufrufe für alle relevanten Parameter im TI-Objekt durch.

    Führen Sie alle für Ihre Anwendung erforderlichen Aktionen aus, die wahrscheinlich das Aufrufen der von Ihrem TI-Objekt beschriebenen Schnittstellen umfassen. Möglicherweise verfügen Sie auch über zusätzliche Aufgaben, die für Ihre Anwendung erforderlich sind. Weitere Informationen finden Sie unter Programmierung Windows-Initiated Verarbeitung.

  4. Achten Sie beim Schreiben Ihrer Anwendung darauf, die relevanten Sicherheitsdetails Ihrer Umgebung zu berücksichtigen.

Beispiel

Das folgende Beispiel stammt aus dem Hauptprogrammcode aus dem Lernprogramm "Diskriminated Union" im SDK-Beispielverzeichnis. Das vollständige Codebeispiel finden Sie unter <"Installation Directory>\Microsoft Host Integration Server\SDK\Samples\ApplicationIntegration\WindowsInitiated\DiscrimiatedUnion".

using System;  
using System.Collections.Generic;  
using System.Text;  
using Banking;  
  
namespace DiscriminatedUnions  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            Console.WriteLine("Processing Output only Account Information");  
            AccountInformationOutOnly();  
  
            Console.WriteLine("\n\nProcessing Input and Output Account Information");  
            AccountInformationInOut();  
  
            Console.WriteLine("\nPress any key to continue...");  
            Console.Read();  
  
        }  
  
        #region Output Only Discriminated Union Processing  
        static void AccountInformationOutOnly()  
        {  
            // Define an instance of the TI Banking object  
            Banking.Accounts MyBankObj = new Banking.Accounts();  
  
            // Call the Get Account Information method on the TI Object  
            // passing it the array that contains the checking and saving   
            // account information   
            string AccountNumber = "BNK4566112";  
            string AccountType = " ";  
            Object AcctInfoUnionObj = null;  
            string FillerNotUsedByThisSample = " ";  
  
            MyBankObj.GetAInfoOutOnly("111223333", AccountNumber, out AccountType, out AcctInfoUnionObj, out FillerNotUsedByThisSample);  
            switch (AcctInfoUnionObj.GetType().ToString())  
            {  
                // check the type of the union that was returned to determine   
                // whether the array element  
                // is a checking or saving account so that the correct  
                // structure of the union can be used  
                case "Banking.CHECKING":  
                        Banking.CHECKING ChkInfo = (Banking.CHECKING)AcctInfoUnionObj;  
  
                        Console.WriteLine("Checking account number: {0}", AccountNumber);  
                        Console.WriteLine("\tOverdraft charge:\t {0,10:C2}", ChkInfo.CHK_OD_CHG);  
                        Console.WriteLine("\tOverdraft limit:\t {0,10:C2}", ChkInfo.CHK_OD_LIMIT);  
                        Console.WriteLine("\tLinked account:\t {0,18}", ChkInfo.CHK_OD_LINK_ACCT);  
                        Console.WriteLine("\tLast Statement:\t {0,18}", ChkInfo.CHK_LAST_STMT);  
                        Console.WriteLine("\tDetail Items:\t {0,18:F0}", ChkInfo.CHK_DETAIL_ITEMS);  
                        Console.WriteLine("\tBalance:\t {0,18:C2}\n", ChkInfo.CHK_BAL);  
                    break;  
  
                case "Banking.SAVINGS":  
                        Banking.SAVINGS SavInfo = (Banking.SAVINGS)AcctInfoUnionObj;  
  
                        Console.WriteLine("Savings account number: {0}", AccountNumber);  
                        Console.WriteLine("\tInterest rate:\t {0,20:P}", SavInfo.SAV_INT_RATE / 100);  
                        Console.WriteLine("\tService charge:\t {0,18:C2}", SavInfo.SAV_SVC_CHRG);  
                        Console.WriteLine("\tLast Statement:\t {0,18}", SavInfo.SAV_LAST_STMT);  
                        Console.WriteLine("\tDetail Items:\t {0,18:F0}", SavInfo.SAV_DETAIL_ITEMS);  
                        Console.WriteLine("\tBalance:\t {0,18:C2}\n", SavInfo.SAV_BAL);  
                    break;  
  
                default:  
                    break;  
            }  
        }  
        #endregion Output Only Discriminated Union Processing  
    }  
}  

Optionale Kommentare.

Siehe auch

So erstellen Sie ein neues Hostintegration Server Designer-Projekt