CPI-C (Common Programming Interface for Communication) ist eine von X/Open und dem CIW
(CPI-C Implementor's Workshop) standardisierte Programmschnittstelle für die Programm-Programm-Kommunikation über Rechnergrenzen hinweg.
openUTM stellt die CPI-C-Programmschnittstelle für die Programmiersprachen COBOL, C und C++ zur Verfügung. Unter openUTM kann CPI-C nicht nur über das X/Open-Protokoll OSI TP, sondern auch über die Protokolle LU6.1 und UPIC kommunizieren.
Da CPI-C nur die Programm-Programm-Kommunikation unterstützt, bietet CPI-C keine Funktionen zur Kommunikation mit Terminals. CPI-C-Services in openUTM können aus diesem Grund nicht direkt von einem Terminal (durch Eingabe eines Transaktionscodes) gestartet werden. CPI-C-Services einer UTM-Anwendung können nur durch Service-Anforderungen von anderen Programmen gestartet werden, z.B.
von UTM-Client-Programmen
von anderen UTM-Anwendungen (Server-Server-Kommunikation)
von Fremd-Anwendungen (z.B. von CICS-Anwendungen bei Server-Server-Kommunikation)
Die folgenden Tabellen geben eine Übersicht über die CPI-C-Aufrufe, die in openUTM zur Verfügung stehen. Eine umfassende Beschreibung der einzelnen Aufrufe finden Sie in der X/Open CAE Specification zu CPI-C (Version 2) vom Oktober 1994. Alle UTM-spezifischen Details sind im openUTM-Handbuch „Anwendungen erstellen mit X/Open-Schnittstellen“ beschrieben. |
Übersicht: CPI-C-Aufrufe in openUTM
Die Aufrufnamen sind für C/C++ und COBOL identisch.
Aufrufe des Starter-Sets:
Funktion | Aufruf | Beschreibung |
Accept_Conversation | CMACCP | Incoming-Conversation annehmen |
Allocate | CMALLC | Outgoing-Conversation aufbauen |
Deallocate | CMDEAL | Conversation (normal) beenden |
Initialize_Conversation | CMINIT | Outgoing-Conversation etablieren, |
Receive | CMRCV | Daten empfangen |
Send_Data | CMSEND | Daten senden |
Aufrufe für Fehler- und Quittungsbehandlung:
Funktion | Aufruf | Beschreibung |
Cancel_Conversation | CMCANC | eine Conversation abbrechen |
Confirmed | CMCFMD | eine positive Quittung an den Partner senden |
Send_Error | CMSERR | Fehlernachricht, negative Quittung senden |
Aufrufe für die Konvertierung:
Funktion | Aufruf | Beschreibung |
Convert_Incoming | CMCNVI | empfangene Daten von EBCDIC in den am lokalen System verwendeten Zeichensatz umsetzen |
Convert_Outgoing | CMCNVO | zu sendende Daten von dem im lokalen System verwendeten Zeichensatz nach EBCDIC umsetzen |