SAP GATEWAY
Sap gateway work process leri ile external programlar arasındaki bağlantıyı sağlar aynı zamanda bir sap instace ile diğer bir sap intance arasındaki iletişimi de sağlar. Her sap instance ı bir tane sap gateway e sahiptir. Sap gateway aşağıdaki işlem birimlerinden oluşur.
1- Gateway Read Process
2- Gateway Monitor
Gateway Read Process, (gwrd , gwrd.exe) Sap gateway in ana process idir. Sap uygulama sunucusu başladığında otomatik olarak çalışır ve belli aralıklarla düzenli olarak çalıştığı kontrol edilir.Tüm CPI-C isteklerini Gateway reader karşılar.

gwrd programının komut satırında alabildiği parametreleri yukarıda görebilirsiniz.

Gateway reader programının release bilgilerini yukarıda görebilirsiniz.
Gateway Monitor, (gwmon, gwmon.exe) Sap gateway i analiz etmek ve yönetmek için kullanılır. gwmon u başlattığımız zaman aktif olan CPI-C connectionlarını alır. gwmon menüsü üzerinden tüm monitor işlemlerini yapabiliriz. Aynı zamanda da sap üzerinde SMGW transaction code unu kullanarak da gerekli montoring işlemlerini yapabiliriz.
Sunucu üzerinden gwmon menüye bağlanabilmek için gwmon <sistem no> komutunu kullanabiliriz.

yukarıda menüyü görebilirsiniz. 3 seçeneği ile sap gateway e bağlı olan client ların listesini aşağıda görebilirsiniz.

SMGW transaction code ile de aynı monitoring işlemini yapabilirsiniz.

LU Name: Logical Unit adı. Remote partner programın çalıştığı hostname i gösterir.
TP Name: Gateway tarafından çalıştırılan program adını gösterir.
User Name: connectionu kullanan kullanıcının adını gösterir.
Status:
FREE : Connection kullanılmıyor
INIT : Connection kullanıma hazırlanıyor.
INITIALIZED : Connection kullanıma hazırlandı.
CONNECT : Connection kuruluyor.
CONNECTED : Connection kuruldu.
DISCONNECT : Connection kapatılıyor.
DISCONNECTED : Connection kapatıldı.
Symbolic (Destination): CPIC connection kurulduğu zaman sap veritabanı içinde TXCOM tablosu içine ilgli key yazılır. ( TXCOM tablosu connection parametrelerini yöneten tablodur. ) İlk başta sistem bu tablodan gereken connection parametreleri okumaya çalışır.Bu kolonda bu parametreleri görürüz.
ConvID: Conversation ID connectionları birbirinden ayırmaya yarayan connection id lerdir. Üzerine çift tıkladığınızda detayları görebilirsiniz.
Protocol:
R2PR: R/2 presentation
INT : Internal communication
EXT : External communication
REG : External communication with registered program
CPIC: CPI-C communication
NE : External communication, not started by gateway
Last Request: Son isteğin ne zaman yapıldığını gösteren kolondur.
Sap Error: Sap tarafından bildirilen kod değerini gösterir. Tüm kodların anlamlarını aşağıda bulabilirsiniz.
0 OK
221 General CPIC error
222 Memory bottleneck
223 Network read error
224 Network write error
225 Invalid request
226 No connection with the R/3 System
227 Gateway process ended
228 Memory area read error
229 Memory area write error
230 No available LU
231 No available gateway process
232 Error when starting gateway process
233 Incorrect communication type
234 Connection setup failed
235 Error when processing connection table
236 No connection to gateway
237 Connection to gateway terminated
238 Write error with gateway
239 Read error with gateway
240 Invalid length
241 Invalid environment
242 Timeout with connection setup
243 Error when setting up local R/3 System connection
244 Connection to local R/3 System terminated
245 Memory overflow
246 Invalid header version
247 Gateway not started
248 Error when accessing table TXCOM
249 Communication table full
630 Invalid mode
631 Max. number of gateways reached
632 No LU entered
633 Max. number of CPIC clients reached
634 Invalid TP name
635 Failed to start a local program
636 Invalid network handle
637 Failed to start remote program
638 Failed to start program
639 Failed to send datagram
640 Internal gateway error
664 Gateway host unknown
665 Gateway service name unknown
666 Gateway network error
667 Failed to execute command
668 The R/2 System was restarted
669 Symbolic definition too long
670 No further side info entries
672 R/3 login failed
673 IMS error purging
674 Terminal output
676 Gateway security error
677 Timeout for registered program
678 Program is registered
679 Program is not registered
720 Program must not be registered
721 SNC is deactivated
722 SNC is urgently required
723 SNC name not set
724 No standard SNC name exists
725 Log does not support SNC
726 Gateway not connected to R/3
727 SNC is not required for this connection
728 Conversation ID not found
729 Insecure communication via the security port
730 Start of insecure programs not permitted
731 Gateway was shut down
732 Start of remote programs not permitted
Aşağıda görüdüğümüz return code ları ise Gateway tarafından bildirilen code lardır.
450 No memory available
451 No side info found
452 TP_START failed )
453 No initialization
454 GETLU failed
455 Program received a signal
456 Timeout when setting up connection
457 ALLC failed
458 SEND failed
459 PREPARE failed
460 FLUSH failed
461 RECEIVE failed
462 Missing command line argument
463 GET_ALLOCATE failed
464 DEAL failed
465 TP_END failed
466 Max. number of connections reached
467 SNAOPEN failed
468 SNACTL failed
469 FLUSH not supported
470 SNACLSE failed
471 Incorrect connection status
472 No entry in side info found
473 No connection found
474 Connection terminated manually
475 Connection terminated automatically
476 No connection partner found
477 CONFIRM failed
478 CONFIRMED failed
479 Host entry not in side info
480 Service entry not in side info
481 Protocol entry not in side info
482 LU entry not in side info
483 TP entry not in side info
484 No connection to gateway
485 Errors in function gethostname
486 SAP_CMACCP not executed
487 Name not in argument list
488 Host not in argument list
489 Service not in argument list
490 Conv ID not in argument list
491 Invalid parameter
492 LU62CVCT failed
493 LU62ATTACH failed )
494 No conv table found
495 Incorrect conv table
496 Incorrect conv table entries
497 NiHostToAddr error
498 NiAddrToHost error
499 Error accessing table THOST
760 Gateway failed to find side info file
761 SNA function error ( RECEIVE )
762 SNC_LIB not in argument list
763 SNC not in argument list
764 Invalid SNC handle
765 SNC deactivated
766 SNC error
767 SNC_MODE=ON , SNC required
768 SNC not available
769 Invalid call parameters
770 Memory area too small
771 SNC: invalid status
772 CPIC and SAP return values
773 Invalid registration status to execute the function
774 Output of CPIC and SAP return codes
775 No symbolic destination available
SAP GATEWAY AÇMA/KAPAMA İŞLEMİ:
Unix veya Windows sistemlerde sap gateway de normal stopsap ve startsap komutlarıyla beraber kapanır ve açılır. Bu işlemi Sap dispatcher yönetir. Fakat isteğe bağlı olarak sap gateway i standalone gateway olarak başka bir sunucuyada kurulabilir. Bu gibi durumlarda standalone gateway i start etmek için aşağıdaki komut kullanılır.
gwrd -force pf=<profile> &
Stop etmek için ise:
ps -ef | grep gwrd
komutunu çalıştırıp , gwrd programının process id sini alıp INT sinyali kill etmek gerekir.
kill INT <pid>
Windows SAP Gateway standalone sistemde ise stop işlemi için Task manager dan servisi stop etmeniz yeterli olacaktır. Başlatmak için ise Sap Service Manager dan start edebilirsiniz.
CPI-C Connection Nedir: Common Programming Interface – Communications (CPI-C) programlar için standart call arayüzüdür. IBM tarafından 1987 de SAA startandartlarının bir parçası olarak yayınlanmıştır ve program to program iletişim standartıdır.
Sap Gateway yukarıda belirttiğimiz gibi parametrelerle yönetilen bir iletişim makenizmasıdır. Aşağıda Sap Gateway parametrelerini bulabilirsiniz.
Genel Konfigurasyon parametreleri:
- gw/startup : Gateway start olurken bu parametreyi okur ve başlatılacak olan RFC/CPIC programları belireyen parametredir. Varsayılan değeri local için /usr/sap/<SID>/DVEBMGS00/data/gwstartup dır.
- gw/accept_remote_trace_level : CPIP veya RFC connectionun trace file nın transfer edilip edilmeyeceğini belirleyen parametredir. 0 izin verir 1 izin vermez.
- gw/rem_start : Remote CPIC programlarının nasıl start olacağını belirleyen parametredir. Varsayılan değeri REMOTE_SHELL dir.
- REMOTE_SHELL : Remote Shell ile start
- REXEC : Rexec ile start (Sadece UNIX )
- DISABLED : Programların remote işlemlerini kapatma
- gw/remsh : Remote host lar üzerindeki Remote_shell path lerini belirlediğimiz parametredir. Varsayılan değeri:
HP : /usr/bin/remsh
AIX: /usr/ucb/remsh
SUN: /bin/rsh
Windows: rsh
Diğerleri: remsh
- gw/stat : Gateway istatiklerinin statusunu belirleyen parametredir. 0 istatistik aktif değil 1 istatistik aktif anlamına gelir. Varsayılan değeri 0 dır.
- gw/monitor : Gateway in gateway monitor ile iletişimi local veya remote olarak kurması gerektiğini belirleyen parametredir. Varsayılan değeri 2 dir.
- 0 : Monitoring pasif
- 1 : Sadece local montior
- 2 : Local ve remote için montior
Tayfur BÖLER
Senior Database&SapBasis Consultant